Permissions

ls 權限被拒絕,即使有執行權限

  • August 12, 2013

/srv/site用. www-data:www-data_ ug+rwx然後我將自己添加到 group www-data

$ sudo usermod -a -G www-data cyrus
$ sudo chgrp -R www-data /srv/site
$ sudo chmod -R ug+rwX /srv/site

但是,為什麼我仍然獲得許可被拒絕?

$ ls /srv/site
ls: cannot open directory /srv/site: Permission denied

$ cd /srv; ls -la   
total 12
drwxr-xr-x  3 root     root     4096 Aug 13 02:42 .
drwxr-xr-x 24 root     root     4096 Aug 11 21:20 ..
drwxrwx--x 10 www-data www-data 4096 Aug 13 02:42 site

有沒有重新登錄。使用者登錄後,組成員身份通常不會重置。

正如所指出的,您必須重新登錄才能刷新組向量。

為了不失去您工作的上下文(例如其他打開的終端),您可以考慮

user$ su - user

要麼

user$ newgrp www-data

然後從那裡你可以產生具有完整組向量的新程序。

在 的情況下newgrp,您最終將成為您的主要群體www-data(在這種情況下),這很重要,例如。創建新文件時。

如果是su,我想知道如何使用sudo(sudo -iu user不刷新組向量) 達到相同的效果。

引用自:https://serverfault.com/questions/530469