Erstellen Sie eine Gruppe, indem Sie Sudo und 777 nicht verwenden

903

Wie können Sie eine Gruppe erstellen, mit der ich Programme eines anderen Benutzers im PC in meinem Benutzerkonto ohne 777-Berechtigungen oder mit verwenden kann sudo?

Ich habe einen neuen Benutzer von erstellt sudo adduser masi. Ich muss entweder die Berechtigungen jedes Programms ändern, um 777 unter / usr / bin zu sein ODER, um sudojedes Programm auszuführen.

Beide Möglichkeiten sind jedoch für Sicherheit und Benutzerfreundlichkeit schrecklich. Ich sollte anscheinend eine Gruppe erstellen brothersund dann zuweisen, welches Programm beide Brüder ohne verwenden können sudo.

2

5 Antworten auf die Frage

2

Sie müssen einer Binärdatei keine Schreibberechtigung hinzufügen, um sie auszuführen. Sie könnten sie einfach zu 755 root: root machen. Wenn Sie die Programme auf alle außer einer Gruppe beschränken möchten, können Sie chmod 750 und Ihre neue Gruppe chgrp hinzufügen.

Ich habe alles 755 root: root, aber Programme funktionieren nicht. vor 15 Jahren 0
Was ist die Fehlermeldung? Und welches Betriebssystem? mark4o vor 15 Jahren 0
2
hometoast

(Haftungsausschluss: Momentan bei Windows angemeldet) Erstellen Sie eine Gruppe

addgroup SomeName 

Fügen Sie dann jeden Benutzer zur Gruppe hinzu

usermod -G SomeName,other,groups user1 usermod -G SomeName,other,groups user2 

Ändern Sie die Berechtigungen für die Datei

chgrp SomeName theFile chmod g+rx theFile 
"addgrp group me" ist klarer als Ihr zweiter Befehlssatz. vor 15 Jahren 1
1
Douglas Leeder

Sie sollten sich nicht mit den Berechtigungen in / usr / bin herumschlagen. Ihre Verteilung verwaltet das, alle Programme in diesem Verzeichnis, deren Eigentümer es ist root, und verfügt über 755 Berechtigungen.

Wenn Sie Programme haben möchten, die sowohl Sie als auch ein anderer Benutzer verwenden können, die anderen Benutzer jedoch nicht können, erstellen Sie ein anderes Verzeichnis, fügen Sie es Ihren PATHs hinzu und legen Sie Berechtigungen entsprechend fest.

Ich denke, Sie müssen die Fehlermeldungen angeben, die Sie sehen, da die Berechtigung 755 zum Ausführen eines Programms ausreicht.

0
hlovdal

Die Erlaubnis 777 (rwxrwxrwx) würde auch Schreibberechtigungen für alle implizieren, und dies ist in jedem Fall nicht erforderlich, um eine Binärdatei auszuführen. Die Berechtigung, die zählt, ist die x-Berechtigung - das niedrigstwertige Bit in jeder 3-stelligen Oktalmodusnummer (7 = 111 oder rwx). Um eine Binärdatei auszuführen, benötigen Sie auch Leseberechtigung.

Normalerweise sind die Berechtigungen von Programmen, die in / usr / bin installiert sind, bereits festgelegt, sodass sie für alle ausführbar sind (normalerweise gehören root, group root, Berechtigung 755 oder 555). Wenn Sie also keine besonderen Änderungen vorgenommen haben, sollte dies nicht der Fall sein irgendetwas zu tun.

Überprüfen Sie die Berechtigung für die Binärdateien in / usr / bin, und wenn es sich nicht von 755 oder 755 unterscheidet, können Sie dies tun.

0
UberJim

Eine weitere gute Alternative ist die Verwendung erweiterter ACLs (Sie müssen das entsprechende Dateisystem mit dem Flag 'acl' einhängen).

Wenn Sie acls verwenden, können Sie einzelnen Benutzern / Gruppen spezifischen Zugriff auf Dateien / Verzeichnisse gewähren / verweigern, ohne für jede 'Trennung von Rechten / Berechtigungen' eine Gruppe hinzufügen zu müssen.

man getfacl, setfacl, chacl für mehr infos, jedoch einfach gesagt:

Gewähren eines zusätzlichen Benutzer (lisa) rx (Lesen / Ausführen) Zugriff auf eine Datei

 setfacl -m u:lisa:rx file 

Einen benannten Gruppeneintrag aus der ACL einer Datei entfernen

 setfacl -x g:staff file 

Hoffe, das bringt dich auf die richtige Spur ......