wfmedia.ch

sudo

Der Befehl sudo kann Programmaufrufen vorangestellt werden. Er ermöglicht berechtigten Benutzern, das Programm im Namen und mit den Rechten eines anderen Benutzers auszuführen. Beispielsweise um Aufgaben auszuführen, die Administratoren vorbehalten sind:

- Programme installieren (sudo apt (-get) install ...)
- Systemkonfigurationen ändern (sudo nano /etc/fstab)

Sudo fragt vor der Ausführung des Programms unter einem anderem Namen nach dem Passwort des aufrufenden Benutzers. Damit wird überprüft, ob dieser den Befehl selbst eingegeben hat. Der Kreis der berechtigten Benutzer ist in der Datei /etc/sudoers festgelegt. Standardmäßig wird als Ziel-Benutzer root angenommen.

Achtung!
Erweiterte Rechte mittels der hier beschriebenen Verfahren bitte nur verwenden, wenn eine Aufgabe dies wirklich erfordert, die Programmausführung also zum Beispiel mit Root-Rechten erfolgen muss. Änderungen an Systemdateien sollte man mit Bedacht vornehmen und vorher eine Sicherungskopie anlegen. Eine falsche Verwendung von sudo kann das System unbrauchbar machen.

Unter Ubuntu wird in der /etc/sudoers standardmäßig allen Mitgliedern der Gruppe sudo erlaubt, zum Benutzer root zu werden und damit Rootrechte zu erhalten. Der oder die bei der Installation angelegten Benutzer gehört standardmäßig der Gruppe sudo an. 
In Desktopumgebungen wie GNOME oder KDE werden für bestimmte Aufgaben teilweise automatisch Rootrechte für ein bestimmtes Programm angefordert. So wird man z.B. für eine Programminstallation automatisch nach seinem Passwort gefragt, damit APT Rootrechte erhält und das Programm installieren kann. sudo braucht dann vielfach gar nicht mehr manuell aufgerufen zu werden.


Installation
sudo ist essentieller Bestandteil jeder Ubuntu-Installation und sollte auf gar keinen Fall entfernt werden. Es ist im Paket

sudo

enthalten.

Kommandozeilenbefehl Wirkung HOME benutzbar von
sudo BEFEHL führt den Befehl BEFEHL als root aus unverändert Gruppe sudo
sudo -u BENUTZERNAME BEFEHL führt Befehl BEFEHL als Benutzer BENUTZERNAME aus unverändert Gruppe sudo
sudo -H BEFEHL führt Befehl BEFEHL als root mit angepasster Variablen $HOME aus /root Gruppe sudo
sudo -s startet mittels Variable SHELL definierte Shell unverändert Gruppe sudo
sudo -i BEFEHL startet Login-Shell und setzt dabei sowohl Variable HOME und das aktuelle Arbeitsverzeichnis auf die Standardwerte für root (empfohlen). Ein angegebener Befehl BEFEHL wird ausgeführt; wenn man keinen angibt, landet man in einer interaktiven Login-Shell für root (sog. Rootshell). /root Gruppe sudo
sudo -i -u BENUTZERNAME BEFEHL startet Login-Shell und setzt dabei sowohl Variable HOME und das aktuelle Arbeitsverzeichnis auf die Standardwerte für den neuen Benutzer BENUTZERNAME. Ein angegebener Befehl BEFEHL wird ausgeführt; wenn man keinen angibt, landet man in einer interaktiven Login-Shell des angegebenen Benutzers BENUTZERNAME. /home/BENUTZERNAME Gruppe sudo
su BENUTZERNAME wechselt aktuellen Benutzer mit Passwort des Zielbenutzers /home/BENUTZERNAME jedem
back