Sudo: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
|||
(11 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
'''sudo''' - | '''sudo''' - [[Kommando]]s mit der [[Linux/Identität|Identität]] eines anderen [[Linux/Benutzer|Benutzer]]s [[ausführen]] | ||
== Beschreibung == | == Beschreibung == | ||
== Installation == | == Installation == | ||
<syntaxhighlight lang="bash" highlight="1" line> | <syntaxhighlight lang="bash" highlight="1" line> | ||
apt-get install sudo | |||
</syntaxhighlight> | </syntaxhighlight> | ||
== Aufruf == | == Aufruf == | ||
<syntaxhighlight lang="bash" highlight="1" line> | <syntaxhighlight lang="bash" highlight="1" line> | ||
Zeile 12: | Zeile 13: | ||
sudo -l [-ABknS] [-g group] [-h host] [-p prompt] [-U user] [-u user] [command] | sudo -l [-ABknS] [-g group] [-h host] [-p prompt] [-U user] [-u user] [command] | ||
sudo [-ABbEHnPS] [-C num] [-D directory] [-g group] [-h host] [-p prompt] [-R directory] [-r role] [-t type] [-T timeout] [-u user] [VAR=value] [-i | -s] [command] | sudo [-ABbEHnPS] [-C num] [-D directory] [-g group] [-h host] [-p prompt] [-R directory] [-r role] [-t type] [-T timeout] [-u user] [VAR=value] [-i | -s] [command] | ||
sudoedit [-ABknS] [-C num] [-D directory] [-g group] [-h host] [-p prompt] [-R directory] [-r role] [-t type] [-T timeout] [-u user] file | sudoedit [-ABknS] [-C num] [-D directory] [-g group] [-h host] [-p prompt] [-R directory] [-r role] [-t type] [-T timeout] [-u user] file .. | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Zeile 24: | Zeile 25: | ||
* Systemkonfigurationen ändern (sudo nano /etc/fstab) | * Systemkonfigurationen ändern (sudo nano /etc/fstab) | ||
Der Linux-Befehl sudo ermöglicht einem Benutzer, einen Befehl als Superuser oder als ein anderer Benutzer auszuführen | Der Linux-Befehl sudo ermöglicht einem Benutzer, einen Befehl als Superuser oder als ein anderer Benutzer auszuführen | ||
* sudo erfordert die Angabe eines Passworts | * sudo erfordert die Angabe eines Passworts | ||
* Dies ist normalerweise das Benutzerpasswort, nicht das Root-Passwort | * Dies ist normalerweise das Benutzerpasswort, nicht das Root-Passwort | ||
; Beispiel | ; Beispiel | ||
<syntaxhighlight lang="bash" highlight="1" line> | |||
usermod -G sudo -a Otto | |||
</syntaxhighlight> | |||
Und kann mit sudo root Befehle ausführen, ohne sich als root anzumelden | Jetzt gehört der User Otto der Gruppe sudo an | ||
<syntaxhighlight lang="bash" highlight="1" line> | |||
sudo apt update | |||
</syntaxhighlight> | |||
Und kann mit sudo root Befehle ausführen, ohne sich als root anzumelden | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
less /etc/group | |||
</syntaxhighlight> | |||
Mit diesem Befehl lassen sich Gruppen anzeigen und nachvollziehen, wer zu sudo gehört. Siehe [[/etc/group]] | Mit diesem Befehl lassen sich Gruppen anzeigen und nachvollziehen, wer zu sudo gehört. Siehe [[/etc/group]] | ||
=== | === Problembehebung === | ||
; "could not open display" | ; "could not open display" | ||
/etc/sudoers.d | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
Defaults env_keep += "DISPLAY" | |||
</syntaxhighlight> | |||
Dadurch kann sudo die Umgebungsvariable DISPLAY an das ausgeführte Programm übergeben, und diese Programme können dann eine Verbindung zum richtigen DISPLAY herstellen | |||
<syntaxhighlight lang="bash" highlight="1" line> | |||
xhost + | |||
</syntaxhighlight> | |||
== Konfiguration == | == Konfiguration == | ||
Nach der Installation muss jeder Benutzer, der SuperUser-Rechte erhalten soll, der Gruppe "sudo" hinzugefügt werden | Nach der Installation muss jeder Benutzer, der SuperUser-Rechte erhalten soll, der Gruppe "sudo" hinzugefügt werden | ||
<syntaxhighlight lang="bash" highlight="1" line> | |||
usermod -G sudo -a BENUTZERNAME | |||
</syntaxhighlight> | |||
; Ausführen von sudo ohne Passwort | ; Ausführen von sudo ohne Passwort | ||
<syntaxhighlight lang="bash" highlight="1" line> | |||
visudo | |||
</syntaxhighlight> | |||
In der sudoers.d Datei in der letzten Zeile folgenden Befehl einfügen | In der sudoers.d Datei in der letzten Zeile folgenden Befehl einfügen | ||
<syntaxhighlight lang="bash" highlight="1" line> | |||
'USER' ALL=(ALL) NOPASSWD:ALL | |||
</syntaxhighlight> | |||
* User ist der Name des Users, den das betreffen soll | * User ist der Name des Users, den das betreffen soll | ||
; Einzelne Befehle auszuschließen | ; Einzelne Befehle auszuschließen | ||
Zeile 70: | Zeile 86: | ||
=== Siehe auch === | === Siehe auch === | ||
{{Special:PrefixIndex/{{BASEPAGENAME}}}} | {{Special:PrefixIndex/{{BASEPAGENAME}}}} | ||
==== Dokumentation ==== | ==== Dokumentation ==== | ||
Zeile 86: | Zeile 103: | ||
</noinclude> | </noinclude> | ||
Aktuelle Version vom 13. Dezember 2024, 12:29 Uhr
sudo - Kommandos mit der Identität eines anderen Benutzers ausführen
Beschreibung
Installation
apt-get install sudo
Aufruf
sudo -h | -K | -k | -V
sudo -v [-ABknS] [-g group] [-h host] [-p prompt] [-u user]
sudo -l [-ABknS] [-g group] [-h host] [-p prompt] [-U user] [-u user] [command]
sudo [-ABbEHnPS] [-C num] [-D directory] [-g group] [-h host] [-p prompt] [-R directory] [-r role] [-t type] [-T timeout] [-u user] [VAR=value] [-i | -s] [command]
sudoedit [-ABknS] [-C num] [-D directory] [-g group] [-h host] [-p prompt] [-R directory] [-r role] [-t type] [-T timeout] [-u user] file ..
Optionen
Parameter
Umgebungsvariablen
Exit-Status
Anwendung
Beispielsweise für Aufgaben auszuführen, die sonst root vorbehalten sind
- Programme installieren (sudo apt-get install ...)
- Systemkonfigurationen ändern (sudo nano /etc/fstab)
Der Linux-Befehl sudo ermöglicht einem Benutzer, einen Befehl als Superuser oder als ein anderer Benutzer auszuführen
- sudo erfordert die Angabe eines Passworts
- Dies ist normalerweise das Benutzerpasswort, nicht das Root-Passwort
- Beispiel
usermod -G sudo -a Otto
Jetzt gehört der User Otto der Gruppe sudo an
sudo apt update
Und kann mit sudo root Befehle ausführen, ohne sich als root anzumelden
less /etc/group
Mit diesem Befehl lassen sich Gruppen anzeigen und nachvollziehen, wer zu sudo gehört. Siehe /etc/group
Problembehebung
- "could not open display"
/etc/sudoers.d
Defaults env_keep += "DISPLAY"
Dadurch kann sudo die Umgebungsvariable DISPLAY an das ausgeführte Programm übergeben, und diese Programme können dann eine Verbindung zum richtigen DISPLAY herstellen
xhost +
Konfiguration
Nach der Installation muss jeder Benutzer, der SuperUser-Rechte erhalten soll, der Gruppe "sudo" hinzugefügt werden
usermod -G sudo -a BENUTZERNAME
- Ausführen von sudo ohne Passwort
visudo
In der sudoers.d Datei in der letzten Zeile folgenden Befehl einfügen
'USER' ALL=(ALL) NOPASSWD:ALL
- User ist der Name des Users, den das betreffen soll
- Einzelne Befehle auszuschließen
- in der Klammer die Befehle listen, die gewünscht sind, in diesem Fall sind das alle Befehle (ALL)
Dateien
Anhang
Siehe auch
Dokumentation
Man-Page
Info-Pages
Links
Projekt
Weblinks