Ermöglichen Sie mehreren Benutzern die Installation von Software mithilfe von Homebrew

12

Ich habe homebrew mit meinem anderen Benutzerkonto installiert (das ich während der Arbeit verwende), aber es ist unmöglich, Software von meinem neu erstellten persönlichen Konto zu installieren:

$ brew install unrar
Error: Cannot write to /usr/local/Cellar

A ls -dl /usr/local/Cellar/zeigt, dass das Verzeichnis meinem anderen Benutzerkonto gehört.

Wie konfiguriere ich Homebrew, damit mehrere Benutzer Software installieren können?

Sridhar Ratnakumar
quelle
Sie können die Kontrolle von dem anderen Benutzer übernehmen, indem Siesudo chown -R $(whoami) /usr/local
Nathan Lloyd

Antworten:

13

zuerst umaskfür jeden Benutzer einstellen . (.basrc oder .profile oder .bash_profile)

umask 0002 # group write permission

Geben Sie dann die Schreibberechtigung für Gruppen über /usr/localrekursiv:

sudo chmod -R g+w /usr/local/

Ändern Sie dann den Eigentümer in staff

sudo chgrp -R staff /usr/local

Jetzt kann jeder Benutzer, der sich in einer staffGruppe befindet, brew installandere mit dem Brühen zusammenhängende Vorgänge ausführen. Meistens ist jeder Benutzer in dieser Gruppe.

Vigo
quelle
1
Ich musste dasselbe für / Library / Caches / Homebrew tun, damit dies tatsächlich funktionierte. Und da alle meine Benutzer den Administratorzugriff aktiviert haben, habe ich denchgrp
Duvrai
1

Im Homebrew-Wiki wird erwähnt, dass Sie es jederzeit installieren können. Versuchen Sie, für jeden Benutzer eine lokale Installation durchzuführen.

MatthewFord
quelle
Das will ich eigentlich nicht. Ich möchte, dass die Software an einem gemeinsamen Ort installiert wird, unabhängig davon, wer sie installiert hat.
Sridhar Ratnakumar
Ich habe das ausprobiert und wünschte, ich hätte es nicht
getan,
0

Hier ist meine Problemumgehung:

su - myother_user_account -c "brew install ..."
Sridhar Ratnakumar
quelle
1
Dies ist keine empfohlene Lösung für das Problem mit mehreren Benutzern. Es setzt voraus, dass Benutzer über Root- und / oder Direktzugriff verfügen, um Befehle als ein anderer Benutzer ausführen zu können, was den Zweck zunichte macht, überhaupt über Berechtigungen auf Benutzerebene zu verfügen. Sie können das Modell für Ihren eigenen Anwendungsfall aufteilen, vorausgesetzt, Sie besitzen die Box und beide Konten. Es wäre jedoch nicht ratsam, diese zu verwenden, und Ihre eigene Systemnutzung wäre sicherer, wenn Sie ordnungsgemäße Privilegientrennungen verwenden würden.
Caleb