嗨,刚刚在 Ubuntu 20.04 上安装了 Apache2。将自己添加到 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