'\" t .\" Title: su .\" Author: [see the "AUTHOR(S)" section] .\" Generator: Asciidoctor 2.0.26 .\" Date: 2026-09-02 .\" Manual: Dienstprogramme für Benutzer .\" Source: util-linux 2.42.3 .\" Language: English .\" .TH "SU" "1" "2026-09-02" "util\-linux 2.42.3" "Dienstprogramme für Benutzer" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 .nh .ad l .de URL \fI\\$2\fP <\\$1>\\$3 .. .als MTO URL .if \n[.g] \{\ . mso www.tmac . am URL . ad l . . . am MTO . ad l . . . LINKSTYLE blue R < > .\} .SH "BEZEICHNUNG" su \- einen Befehl unter anderer Benutzer\- und Gruppenkennung ausführen .SH "ÜBERSICHT" .sp \fBsu\fP [Optionen] [\fB\-\fP] [\fIBenutzer\fP|\fIUID\fP [\fIArgument\fP …]] .SH "BESCHREIBUNG" .sp \fBsu\fP ermöglicht es, Befehle unter anderer Benutzer\- und Gruppenkennung auszuführen. .sp Wenn beim Aufruf kein \fIBenutzer\fP angegeben wird, öffnet \fBsu\fP standardmäßig eine interaktive Shell als_root_. Wenn ein \fIBenutzer\fP angegeben wird, können zusätzliche \fIArgumente\fP übergeben werden, wobei diese an die Shell weitergeleitet werden. .sp Aus Gründen der Abwärtskompatibilität wechselt \fBsu\fP standardmäßig nicht das aktuelle Verzeichnis und setzt lediglich die Umgebungsvariablen \fBHOME\fP und \fBSHELL\fP (plus \fBUSER\fP und \fBLOGNAME\fP, falls der Ziel\-\fIBenutzer\fP nicht Root ist). Es wird empfohlen, stets die Option \fB\-\-login\fP (statt deren Kurzform \fB\-\fP zu verwenden, um durch Mischen der Umgebungen verursachte Nebenwirkungen zu vermeiden. .sp Diese Version von \fBsu\fP verwendet PAM zur Authentifizierung sowie für die Benutzerkonten\- und Sitzungsverwaltung. Einige der in anderen \fBsu\fP\-Implementierungen verfügbaren Konfigurationsoptionen, wie die Unterstützung für eine Gruppe »wheel«, müssen über PAM konfiguriert werden. .sp \fBsu\fP zielt vorrangig auf nicht privilegierte Benutzer ab. Die empfohlene Lösung für privilegierte Benutzer (zum Beispiel durch Root ausgeführte Skripte) ist der Befehl \fBrunuser\fP(1), der keine Benutzerkennung setzt, keine Authentifizierung erfordert und eine separate PAM\-Konfiguration bereitstellt. Falls keine PAM\-Sitzung erforderlich ist, wird empfohlen, den Befehl \fBsetpriv\fP(1) zu verwenden. .sp Beachten Sie, dass \fBsu\fP in allen Fällen PAM (\fBpam_getenvlist\fP(3)) zum endgültigen Ändern der Umgebung verwendet. Die Befehlszeilenoptionen wie \fB\-\-login\fP oder \fB\-\-preserve\-environment\fP wirken sich auf die Umgebung aus, bevor sie von PAM verändert wird. .sp Seit Version 2.38 setzt \fBsu\fP die Ressourcenbegrenzungen RLIMIT_NICE, RLIMIT_RTPRIO, RLIMIT_FSIZE, RLIMIT_AS und RLIMIT_NOFILE des Prozesses zurück. .SH "OPTIONEN" .sp \fB\-c\fP, \fB\-\-command\fP \fIBefehl\fP .RS 4 übergibt den angegebenen \fIBefehl\fP mit der Option \fB\-c\fP an die Shell. Erstellt eine neue Sitzung mit*setsid*(2). Schauen Sie in \fB\-\-session\-command\fP, um dieselbe Sitzung beizubehalten. .RE .sp \fB\-f\fP, \fB\-\-fast\fP .RS 4 übergibt \fB\-f\fP an die Shell, was abhängig von der jeweiligen Shell nützlich sein kann oder nicht. .RE .sp \fB\-g\fP, \fB\-\-group\fP \fIGruppe\fP .RS 4 gibt die primäre Gruppe an. Diese Option ist nur für den Benutzer Root verfügbar. .RE .sp \fB\-G\fP, \fB\-\-supp\-group\fP \fIGruppe\fP .RS 4 gibt eine ergänzende Gruppe an. Diese Option ist nur für den Benutzer Root verfügbar. Die erste angegebene ergänzende Gruppe wir auch als primäre Gruppe verwendet, falls die Option \fB\-\-group\fP nicht angegeben ist. .RE .sp \fB\-\fP, \fB\-l\fP, \fB\-\-login\fP .RS 4 startet die Shell als Anmelde\-Shell mit einer Umgebung ähnlich zu einer realen Anmeldung. .sp Beachten Sie, dass auf \fBsystemd\fP(1)\-basierten Systemen eine neue Sitzung als echter Einstiegspunkt in das System definiert werden kann. \fBsu\fP erstellt jedoch aus dieser Sicht keine echte Sitzung (durch PAM). Sie benötigen Werkzeuge wie \fBsystemd\-run\fP(1) oder \fBmachinectl\fP(1), um eine vollständige, echte Sitzung zu initiieren. .sp \fBsu\fP tut Folgendes: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} clear all the environment variables except \fBTERM\fP, \fBCOLORTERM\fP, \fBNO_COLOR\fP and variables specified by \fB\-\-whitelist\-environment\fP .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} initialize the environment variables \fBHOME\fP, \fBSHELL\fP, \fBUSER\fP, \fBLOGNAME\fP, and \fBPATH\fP .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} change to the target user\(cqs home directory .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} set argv[0] of the shell to \*(Aq\fB\-\fP\*(Aq in order to make the shell a login shell .RE .RE .sp \fB\-m\fP, \fB\-p\fP, \fB\-\-preserve\-environment\fP .RS 4 erhält die gesamte Umgebung, was bedeutet, dass weder \fBHOME\fP noch \fBSHELL\fP, \fBUSER\fP oder \fBLOGNAME\fP gesetzt werden. Diese Option wird ignoriert, wenn die Option \fB\-\-login\fP angegeben ist. .RE .sp \fB\-P\fP, \fB\-\-pty\fP .RS 4 erstellt ein Pseudo\-Terminal für die Sitzung. Das unabhängige Terminal gewährleistet bessere Sicherheit, da der Benutzer das Terminal nicht mit der Originalsitzung teilt. Bitte beachten Sie den Sicherheitshinweis über die TIOCSTI\-Schwachstelle weiter unten. .sp Die gesamte Sitzung kann auch in den Hintergrund verschoben werden, (zum Beispiel \fBsu \-\-pty\fP \fB\-\fP \fIBenutzer\fP \fB\-c\fP \fIAnwendung\fP \fB&\fP). Wenn das Pseudo\-Terminal aktiviert ist, dann fungiert \fBsu\fP als Proxy zwischen den Sitzungen (Standardein\- und \-ausgabe werden synchronisiert). .sp Diese Funktion ist vorwiegend für interaktive Sitzungen gedacht. Falls die Standardeingabe kein Terminal ist, sondern beispielsweise eine Pipe (zum Beispiel \fBecho "date" | su \-\-pty\fP), dann wird der \fBECHO\fP\-Schalter für das Pseudo\-Terminal deaktiviert, um unordentliche Ausgaben zu vermeiden. .RE .sp \fB\-s\fP, \fB\-\-shell\fP \fIShell\fP .RS 4 führt die angegebene \fIShell\fP anstelle der Vorgabe aus. Falls der Zielbenutzer eine eingeschränkte Shell hat (d.h. die nicht in \fI/etc/shells\fP aufgelistet ist), werden die Option \fB\-\-shell\fP und die Umgebungsvariable \fBSHELL\fP ignoriert, außer wenn der aufrufende Benutzer Root ist. .sp Die auszuführende Shell wird nach den folgenden Regeln in dieser Reihenfolge ausgewählt: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} die durch \fB\-\-shell\fP angegebene Shell .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} die in der Umgebungsvariable \fBSHELL\fP angegebene Shell, wenn die Option \fB\-\-preserve\-environment\fP nicht verwendet wird .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} die im »passwd«\-Eintrag des Zielbenutzers angegebene Shell .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} /bin/sh .RE .RE .sp \fB\-\-session\-command=\fP\fIBefehl\fP .RS 4 ist gleichbedeutend mit \fB\-c\fP, erzeugt aber keine neue Sitzung (davon wird abgeraten). Bitte beachten Sie den Sicherheitshinweis über die TIOCSTI\-Schwachstelle weiter unten. .RE .sp \fB\-T\fP, \fB\-\-no\-pty\fP .RS 4 erstellt im Gegensatz zu \fB\-\-pty\fP und \fB\-P\fP kein Pseudo\-Terminal. Bitte beachten Sie den Sicherheitshinweis über die TIOCSTI\-Schwachstelle weiter unten. .RE .sp \fB\-w\fP, \fB\-\-whitelist\-environment\fP \fIListe\fP .RS 4 setzt die in der Kommata\-getrennten Liste angegebenen Umgebungsvariablen nicht zurück, wenn die Umgebung für \fB\-\-login\fP bereinigt wird. Die Positivliste wird für die Umgebungsvariablen \fBHOME\fP, \fBSHELL\fP, \fBUSER\fP, \fBLOGNAME\fP und \fBPATH\fP ignoriert. .RE .sp \fB\-h\fP, \fB\-\-help\fP .RS 4 zeigt einen Hilfetext an und beendet das Programm. .RE .sp \fB\-V\fP, \fB\-\-version\fP .RS 4 zeigt Versionsinformationen an und beendet das Programm. .RE .SH "SIGNALE" .sp Nach dem Empfang von \fBSIGINT\fP, \fBSIGQUIT\fP oder \fBSIGTERM\fP beendet \fBsu\fP seinen Kindprozess und anschließend sich selbst mit dem empfangenen Signal. Der Kindprozess wird durch \fBSIGTERM\fP beendet, nach einem fehlgeschlagenen Versuch und zwei Sekunden Verzögerung wird der Kindprozess mit \fBSIGKILL\fP getötet. .SH "KONFIGURATIONSDATEIEN" .sp \fBsu\fP liest die Konfigurationsdateien \fI/etc/default/su\fP und \fI/etc/login.defs\fP. Die folgenden Konfigurationseinträge sind für \fBsu\fP relevant: .sp \fBFAIL_DELAY\fP (Zahl) .RS 4 gibt die Verzögerung in Sekunden im Falle eines Authentifizierungsfehlers an. Die Zahl muss eine nichtnegative Ganzzahl sein. .RE .sp \fBENV_PATH\fP (Zeichenkette) .RS 4 definiert die Umgebungsvariable \fBPATH\fP für einen normalen Benutzer. Der Vorgabewert ist _/usr/local/bin:/bin:/usr/bin*. .RE .sp \fBENV_ROOTPATH\fP (Zeichenkette), \fBENV_SUPATH\fP (Zeichenkette) .RS 4 definiert die Umgebungsvariable \fBPATH\fP für root. \fBENV_SUPATH\fP hat Vorrang. Der Vorgabewert ist \fI/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin\fP. .RE .sp \fBALWAYS_SET_PATH\fP (boolescher Wert) .RS 4 Wenn auf \fIyes\fP gesetzt und \fB\-\-login\fP und \fB\-\-preserve\-environment\fP nicht angegeben wurden, initialisiert \fBsu\fP die Umgebungsvariable \fBPATH\fP. .sp Die Umgebungsvariable \fBPATH\fP kann auf Systemen, auf denen \fI/bin\fP und \fI/sbin\fP in \fI/usr\fP zusammengeführt sind, anders sein. Diese Variable wird auch von der Befehlszeilenoption \fB\-\-login\fP und den PAM\-Systemeinstellungen (z.B. \fBpam_env\fP(8)) beeinflusst. .RE .SH "EXIT\-STATUS" .sp \fBsu\fP gibt normalerweise den Rückgabewert des Befehls aus, den es ausgeführt hat. Wenn der Befehl von einem Signal beendet wurde, gibt \fBsu\fP die Signalnummer plus 128 zurück. .sp Von \fBsu\fP selbst erzeugte Rückgabewerte: .sp 1 .RS 4 Allgemeiner Fehler vor dem Ausführen des angeforderten Befehls .RE .sp 126 .RS 4 Der angeforderte Befehl konnte nicht ausgeführt werden .RE .sp 127 .RS 4 Der angeforderte Befehl wurde nicht gefunden .RE .SH "DATEIEN" .sp \fI/etc/pam.d/su\fP .RS 4 Standard\-PAM\-Konfigurationsdatei .RE .sp /etc/pam.d/su\-l .RS 4 PAM\-Konfigurationsdatei, falls \fB\-\-login\fP angegeben wurde .RE .sp \fI/etc/default/su\fP .RS 4 Befehlsspezifische Logindef\-Konfigurationsdatei .RE .sp \fI/etc/login.defs\fP .RS 4 Globale Logindef\-Konfigurationsdatei .RE .SH "SICHERHEITSHINWEISE" .sp Wenn \fBsu\fP ein Terminal mit der ursprünglichen Sitzung teilt, ist es potenziell anfällig für Privilegienausweitung durch TIOCSTI/TIOCLINUX\-ioctl\-Befehlsinjektion. Es gibt zwei integrierte Möglichkeiten, dies zu verhindern: Entweder Sie verwenden \fBsu\fP mit der Option \fB\-c\fP, wodurch eine neue Sitzung über \fBsetsid\fP(2) ohne steuerndes Terminal gestartet wird. Oder, falls Ihr Anwendungsfall ein steuerndes Terminal erfordert, zum Beispiel für eine interaktive Sitzung, können Sie \fBsu\fP anweisen, ein Pseudo\-Terminal mit der Option \fB\-\-pty\fP oder \fB\-P\fP zu verwenden. .sp Aus Sicherheitsgründen protokolliert \fBsu\fP alle fehlgeschlagenen Anmeldeversuche in der \fIbmtp\fP\-Datei, schreibt jedoch nichts in die \fIlastlog\fP\-Datei. Diese Lösung erlaubt die Steuerung des Verhaltens von \fBsu\fP durch die PAM\-Konfiguration. Wenn Sie das Modul \fBpam_lastlog\fP(8) zur Ausgabe von Warnmeldungen zu fehlgeschlagenen Anmeldeversuchen verwenden wollen, dann muss \fBpam_lastlog\fP(8) so konfiguriert werden, dass es ebenfalls die \fIlastlog\fP\-Datei aktualisiert. Zum Beispiel durch: .RS 3 .ll -.6i .sp session required pam_lastlog.so nowtmp .br .RE .ll .SH "GESCHICHTE" .sp Der Befehl \fBsu\fP wurde aus dem \fBsu\fP der GNU Coreutils abgeleitet, das auf einer Implementierung von David MacKenzie basiert. Die Version für Util\-linux wurde von Karel Zak restrukturiert. .SH "SIEHE AUCH" .sp \fBsetpriv\fP(1), \fBlogin.defs\fP(5), \fBshells\fP(5), \fBpam\fP(8), \fBrunuser\fP(1) .SH "FEHLER MELDEN" .sp Nutzen Sie zum Melden von Fehlern das \c .URL "https://github.com/util\-linux/util\-linux/issues" "Fehlererfassungssystem" "." .SH "VERFÜGBARKEIT" .sp Der Befehl \fBsu\fP ist Teil des Pakets util\-linux, welches aus dem \c .URL "https://www.kernel.org/pub/linux/utils/util\-linux/" "Linux\-Kernel\-Archiv" "" heruntergeladen werden kann.