Permissions
多使用者 Homebrew 權限
我的 Mac 上有兩個使用者。兩個都是我,一個是工作模式,一個是非工作模式。我一直存在通過自製軟體安裝的問題。
$ brew install x Error: Can't create update lock in /usr/local/var/homebrew/locks! Fix permissions by running: sudo chown -R $(whoami) /usr/local/var/homebrew
當然,執行這個建議的程式碼可以解決問題——直到我需要使用我的其他使用者進行 brew install ,然後我需要再次更改所有權。如何設置權限以便兩個使用者都可以使用自製軟體安裝?
我不知道
homebrew
具體,但理論上你可以sudo
用來安裝軟體。然後使用特權訪問文件root
,這可能是也可能不是您想要的。不過,一般來說,如果您希望多個非特權使用者能夠寫入同一位置,那麼您要更改的不是該位置的所有者,而是它的**group。您可以創建一個名為的組
homebrewers
:sudo dscl . -create /Groups/homebrewers
然後,您需要查找一個不存在的組 ID。為此,我使用了:
dscl . -list /Groups \ | sed 's@^@/Groups/@' \ | ( while read grp; \ do dscl . -read "${grp}" PrimaryGroupID; \ done ) \ | sort -snk 2
我發現使用的最高組號是 501,所以 4200 可用。所以,我設置了
PrimaryGroupID
to4200
和Password
to*
(未使用)。不要忘記設置這些!如果這樣做,您的組列表將被損壞,您可能必須啟動到單使用者模式才能更正它。sudo dscl . -append /Groups/homebrewers PrimaryGroupID 4200 sudo dscl . -append /Groups/homebrewers Password '*'
然後將您的兩個使用者添加到該組。此處的範例使用和的短名稱(來自
whoami
):user1``user2
sudo dscl . -append /Groups/homebrewers GroupMembership user1 sudo dscl . -append /Groups/homebrewers GroupMembership user2
請注意,您可能必須註銷並重新登錄才能使這些更改生效。
最後,您需要將目錄的組更改為組,
homebrewers
並將其權限更改為組可寫:chown -R :homebrewers /usr/local/var/homebrew chmod -R g+w /usr/local/var/homebrew
如果您願意,您甚至可以將所有者更改
root
為無不良影響:sudo chown -R root /usr/local/var/homebrew
此處顯示的所有命令均在 PowerBook G4 上的 Mac OS X 10.4.11 上進行了測試。自從遷移到 Intel 後發生了很大變化,因此所示命令可能與較新版本中給出的命令不完全相同。基本概念將保持不變。