我正在使用 Ubuntu Server 12.04
我无法写入我的用户应该属于该目录组的目录......
total 12
-rw-rw-r-- 1 www-data root 30 Sep 17 13:34 index.php
drwxrwxr-x 7 www-data root 4096 Sep 17 13:34 twentyeleven
drwxrwxr-x 4 www-data root 4096 Sep 17 13:34 twentyten
dp : dp adm cdrom sudo dip www-data plugdev lpadmin sambashare www-pub
这是更新后的列表...
-rw-rw-r-- 1 www-data root 28 Sep 17 13:34 index.php
drwxrwxr-x 3 www-data root 4096 Sep 17 13:34 plugins
drwxrwxr-x 4 www-data root 4096 Sep 17 13:34 themes
dp@acme:/var/www/stlit/wp-content$ cd themes
dp@acme:/var/www/stlit/wp-content/themes$ ls -la
total 20
drwxrwxr-x 4 www-data root 4096 Sep 17 13:34 .
drwxrwxr-x 4 www-data root 4096 Sep 17 13:34 ..
-rw-rw-r-- 1 www-data root 30 Sep 17 13:34 index.php
drwxrwxr-x 7 www-data root 4096 Sep 17 13:34 twentyeleven
drwxrwxr-x 4 www-data root 4096 Sep 17 13:34 twentyten
如果我需要提供更多信息,请告诉我。
答案1
如果您指的是该文件列表中的twentyeleven
或twentyten
,则那里的组是root,用户是www-data,他拥有这些目录。
如果您希望以该用户身份写入文件,则还需要将文件组更改为 www-data 组。您可能希望sudo chgrp -R www-data .
在包含要以您的用户身份编辑的文件和目录的目录中执行此操作。
答案2
根据上述清单
drwxrwxr-x 4 www-data root .....
这意味着,第一个姓名 www-data
是文件的“所有者”,第二个root
是文件所属的“组”。
而且由于您的用户不在该root
组中(并且不应该在该组中!),您无法修改该文件,因为只有所有者和组才对文件拥有完全访问权限。
要更改文件组,您需要使用
sudo chgrp "new-group-name" file
要更改文件所有者,您需要使用
sudo chown "new-owner-name" file
如果要更改两者,可以使用以下命令进行操作:
sudo chown "new-owner-name":"new-group-name" file
我最好的猜测是你需要使用chgrp
,但你却使用了chown