Linux

授予兩者同等訪問權限後無法訪問另一個使用者的目錄

  • January 31, 2013

我已經通過visudo編輯了****/etc/sudoers文件並添加了

www-data        ALL=(git)       NOPASSWD: ALL
git             ALL=(www-data)  NOPASSWD: ALL

所以現在使用者“git”應該能夠以“www-data”的形式執行命令,但是當我嘗試

sudo -u git ls /tmp/redmine_git_hosting

我得到:

ls: cannot open directory /tmp/redmine_git_hosting/: Permission denied

目錄的權限是:

drwx------  2 www-data www-data 4096 Jan 31 09:02 redmine_git_hosting

我可以通過執行列出目錄:

sudo -u www-data ls /tmp/redmine_git_hosting

我認為您誤解了 sudo 的工作原理。它的作用是讓使用者 git 使用 sudo 以使用者 www-data 的身份執行命令 - 但為了做到這一點,使用者 git 必須執行 sudo,如果不使用該使用者的 sudo 就成為使用者是不夠

簡而言之,你需要做類似的事情

sudo -u git sudo -u www-data ls /tmp/redmine_git_hosting 

反而。

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