Unix

UNIX - 如何賦予其他使用者的使用者權限,因此我不需要 sudo 或輸入密碼?

  • August 8, 2012

我有 2 個使用者有問題

git使用者 - 用於 gitosis - 所以它是一個無密碼使用者,只能通過 root 訪問…

使用者使用者 - 我的文件所在的位置

所以我想做的是給使用者git權限來導航到這樣的 luddico 文件夾

git@domain.me:~/respositories# cd /home/user/websites/domain.com

然後在使用者使用者文件(任何文件/文件夾)中執行任何操作,這樣我就可以例如

git@domain.com:/home/user/websites/domain.com#  git pull

因為實際上上面提到的動作返回:

error: cannot open .git/FETCH_HEAD: Permission denied

所以當我要求這樣的操作時,它會要求 git 的密碼,順便說一句,它沒有任何密碼,或者立即取消它

那麼如何將使用者git配置為對使用者****使用者具有 root/admin 權限, 而無需在命令之前提供任何密碼或 sudo?就像它是根一樣

  • 如果有辦法只允許從git使用者的特定命令,那就更好了

提前致謝

根據要求,一些關於組的教程。希望這不是太初級。

預設情況下,大多數使用者帳戶也是同名組的一部分。要確定帳戶所屬的組,請使用 groups 命令。

# groups root
root : root bin daemon sys adm disk wheel

列出的第一個是主要組,將是使用者創建的任何文件的預設組所有者。這在 ls 的輸出中列為第二個“根”條目。

# touch testfile
# ls -l testfile
-rw-r--r--  1 root root 19 Jan 29 08:37 testfile

為了將使用者添加到組,您可以使用 usermod,如圖所示。您給它的小寫“-g”標誌會更改主要組。使用“-G”和“-a”標誌只更改次要的可能會更好。即,將 git 使用者放入 luddico 的組。

# usermod -G luddico -a git
# groups git
git : git luddico

這應該使 git 可以訪問 luddico 組擁有的任何文件,並具有適當的組權限。組權限是 ls 中列出的第二個“rwx”集。我上面顯示的測試文件只允許根組進行讀取訪問。如果您想授予該組的所有成員寫入權限,則必須為此使用 chmod。

# ls -l testfile
-rw-r--r--  1 root root 19 Jan 29 08:37 testfile
# chmod g+w testfile
# ls -l testfile
-rw-rw-r--  1 root root 19 Jan 29 08:37 testfile

現在根組中的任何人都可以讀取或寫入 testfile。將相同的概念應用於 Luddico 的文件。

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