
Привет, только что установил Apache2 на Ubuntu 20.04. Добавил себя в группу www-data.
id prateek
uid=1000(prateek) gid=1000(prateek) groups=1000(prateek),4(adm),24(cdrom),27(sudo),30(dip),33(www-data),46(plugdev),120(lpadmin),131(lxd),132(sambashare)
изменил владельца и разрешение на /var/www/bihag.moops/public_html.
ls -l /var/www/bihag.moops/
total 4
drwxrwxr-x 3 www-data www-data 4096 Aug 11 07:58 public_html
Папки внутри public_html также принадлежат к этой же группе.
ls -l /var/www/bihag.moops/public_html/
total 8
-rwxrwxr-x 1 www-data www-data 191 Aug 11 07:54 index.html
drwxrwxr-x 2 www-data www-data 4096 Aug 11 07:59 logs
Все еще не могу писать в public_html. Хотя я и являюсь членом той же группы. Почему такая дискриминация?
touch home.php
touch: cannot touch 'home.php': Permission denied
Примечание:Даже если это локальная машина. Я не хочу использовать разрешение 777.
Кроме того:
lsattr /var/www/
--------------e----- /var/www/bihag.moops
--------------e----- /var/www/html
И
lsattr /var/
--------------e----- /var/mail
--------------e----- /var/log
--------------e----- /var/www
решение1
Вы можете проверитьрасширенные атрибуты/var/www
(и его подкаталогов), например так :
$ lsattr /var/www # or /var/www/bihag.moops, or /var/www/bihag.moops/public_html
Если i
установлен атрибут (неизменяемый), то вы увидите что-то вроде:
----i--------------- /var/www
то это может объяснить, почему вы не можете создать новый файл в каталоге даже с правильными разрешениями. В этом случае вы можете удалить атрибут, i
выполнив:
$ sudo chattr -i /var/www # or /var/www/bihag.moops, or /var/www/bihag.moops/public_html