2012-06-19 5 views
49

Ich versuche Sudo Zugang zu einem meiner Benutzer zu geben. Was soll ich in mein Terminal eingeben?Wie bekomme ich einen Linux-Benutzer Sudo Zugang?

+9

Diese Frage hilft offensichtlich vielen Menschen und Sie sollten erwägen, sie wieder zu öffnen. – iMad

+0

Wenn Sie die Frage erneut öffnen möchten, sollten Sie zusätzliche Details angeben, die sie gemäß den Regeln in der Hilfe als gültig qualifizieren. –

+2

Diese Frage sollte eher an die richtige Stelle als an die geschlossene Stelle verschoben werden. – Matthew

Antwort

64

Sie benötigen visudo und im Editor laufen, dass es öffnet schreiben:

igor ALL=(ALL) ALL 

Diese Linie gewährt alle Berechtigungen für Benutzer igor.

Wenn Sie nur einige Befehle ausführen möchten zulassen, müssen Sie sie in der Linie zur Liste:

igor ALL=(ALL) /bin/kill, /bin/ps 
+0

Was wäre der Grund, wenn man das oben genannte ausführt, aber der Benutzer (in diesem Fall 'igor') immer noch keinen vollen sudo-Zugriff hatte (dh kann' sudo ls' ausgeben, aber nicht 'sudo mount -a')? – puk

+0

@puk hängt von den Befehlen ab, die Sie in/etc/sudoers aufgelistet haben; Wenn Sie 'ALL' geschrieben haben, kann der Benutzer alle Befehle ausführen –

55

This answer tun, was Sie brauchen, auch wenn Sie in der Regel keine besonderen Benutzernamen sudoers fügen Sie. Stattdessen haben Sie eine Gruppe von sudoers und fügen Sie einfach Ihren Benutzer bei Bedarf dieser Gruppe hinzu. Auf diese Weise müssen Sie visudo nicht mehr als einmal verwenden, wenn Sie den Benutzern die Berechtigung sudo erteilen.

Wenn Sie auf Ubuntu sind, dann ist die Gruppe höchstwahrscheinlich bereits eingerichtet und rief admin:

$ sudo cat /etc/sudoers 
# 
# This file MUST be edited with the 'visudo' command as root. 
# 

...

# Members of the admin group may gain root privileges 
%admin ALL=(ALL) ALL 

# Allow members of group sudo to execute any command 
%sudo ALL=(ALL:ALL) ALL 

# See sudoers(5) for more information on "#include" directives: 

#includedir /etc/sudoers.d 

Bei anderen Distributionen wie Arch und einige andere, Es heißt normalerweise wheel und Sie müssen es möglicherweise einrichten: Arch Wiki

Um den Benutzern in der Radgruppe volle Root-Rechte, wenn sie einen Befehl mit „sudo“ vorangestellt, Kommentar- der folgenden Zeile: % Rad ALL = (ALL) ALL

Beachten Sie auch, dass auf den meisten Systemen visudo liest die EDITOR Umgebungsvariable oder Standard zur Verwendung vi. So können Sie versuchen, EDITOR=vim visudo zu verwenden, um vim als den Editor zu verwenden.

Um einen Benutzer zur Gruppe hinzufügen Sie (als root) ausgeführt werden soll:

# usermod -a -G groupname username 

wo groupname Ihre Gruppe ist (sagen wir, admin oder wheel) und username der Benutzername ist (sagen wir, john).

-5

Bearbeiten Sie die Datei /etc/sudoers entweder manuell oder mithilfe der visudo-Anwendung. Erinnern Sie sich: System liest /etc/sudoers Datei von oben nach unten, so dass Sie eine bestimmte Einstellung überschreiben können, indem Sie die nächste unten setzen. Um auf der sicheren Seite zu sein - definieren Sie Ihre Zugangseinstellung unten.

+7

Wenn Sie es manuell bearbeiten, können Sie es beschädigen und Ihren sudo-Zugriff beschädigen. Kein Grund, 'visudo' nicht zu verwenden. – ripper234

+0

Stimmen Sie mit dem letzten Kommentar überein. Betrachten Sie auch add-Befehle als Beispiele. – entpnerd

Verwandte Themen