SU(1) | Příručka uživatele | SU(1) |
JMÉNO¶
su - spustí shell pod jiným uživatelským a skupinovým ID
POUŽITͶ
su [options] [-] [user [argument...]]
POPIS¶
su allows commands to be run with a substitute user and group ID.
Je-li zavolán bez udání uživatele, su spustí interaktivní shell jako root. Je-li uživatel zadán, lze zadat další argumenty a ty budou v takovém případě předány shellu.
Z důvodu zpětné kompatibility su ve výchozí podobě nemění pracovní adresář a z proměnných prostředí pouze změní HOME a SHELL (a USER a LOGNAME, není-li cílový uživatel root). Doporučuje se vždy použít přepínač --login (namísto jeho zkratky -), aby se zamezilo vedlejším účinkům způsobeným pomícháním prostředí.
Tato verze su používá pro autentizaci, autorizaci a správu relace PAM. Některé možnosti nastavení nacházející se v jiných implementacích su, jako podpora skupiny wheel, se musí nastavit přes PAM.
su is mostly designed for unprivileged users, the recommended solution for privileged users (e.g., scripts executed by root) is to use non-set-user-ID command runuser(1) that does not require authentication and provides separate PAM configuration. If the PAM session is not required at all then the recommended solution is to use command setpriv(1).
Pamatujte, že su ve všech případech používá PAM (pam_getenvlist(3)), aby upravil konečné prostředí. Přepínače příkazové řádky jako --login nebo --preserve-environment ovlivňují prostředí před tím, než je změněno systémem PAM.
Od verze 2.38 su resetuje omezení zdrojů procesu RLIMIT_NICE, RLIMIT_RTPRIO, RLIMIT_FSIZE, RLIMIT_AS a RLIMIT_NOFILE.
VOLBY¶
-c, --command=příkaz
-f, --fast
-g, --group=skupina
-G, --supp-group=skupina
-, -l, --login
Note that on systemd-based systems, a new session may be defined as a real entry point to the system. However, su does not create a real session (by PAM) from this point of view. You need to use tools like systemd-run or machinectl to initiate a complete, real session.
su does:
-m, -p, --preserve-environment
-P, --pty
Tato funkce je převážně navržena pro interaktivní relace. Pokud standardní vstup není terminál, ale například rourou (př. echo "date" | su --pty), pak příznak ECHO pseudoterminálu bude vypnut, aby se předešlo zaneřádění výstupu.
-s, --shell=shell
The shell to run is selected according to the following rules, in order:
--session-command=příkaz
-T, --no-pty*
-w, --whitelist-environment=seznam
-h, --help
-V, --version
SIGNÁLY¶
Po přijetí signálu SIGINT, SIGQUIT nebo SIGTERM su ukončí svého potomka a poté ukončí sebe přijatým signálem. Potomek bude ukončen signálem SIGTERM. Při neúspěšném pokusu bude po 2 sekundách prodlení potomek zabit signálem SIGKILL.
KONFIGURAČNÍ SOUBORY¶
su reads the /etc/default/su and /etc/login.defs configuration files. The following configuration items are relevant for su:
FAIL_DELAY (číslo)
ENV_PATH (řetězec)
ENV_ROOTPATH (řetězec), ENV_SUPATH (řetězec)
ALWAYS_SET_PATH (pravdivostní hodnota)
Proměnná prostředí PATH se může lišit na systémech, kde /bin a /sbin jsou začleněny do /usr. Tato proměnná je rovněž ovlivněna přepínačem příkazové řádky --login a nastavením systému PAM (např. pam_env(8)).
NÁVRATOVÁ HODNOTA¶
su normally returns the exit status of the command it executed. If the command was killed by a signal, su returns the number of the signal plus 128.
Návratová hodnota vyrobená nástrojem su samotným:
1
126
127
SOUBORY¶
/etc/pam.d/su
/etc/pam.d/su-l
/etc/default/su
/etc/login.defs
POZNÁMKY¶
Z bezpečnostních důvodů su vždy zaprotokoluje selhané pokusy o přihlášení to souboru btmp, avšak vůbec nezapisuje do souboru lastlog. Následující řešení pomocí nastavení PAM lze použít k ovlivnění chování su. Chcete-li používat modul pam_lastlog(8) pro vypisování varování o selhaných přihlašovacích pokusech, pak pam_lastlog(8) musí být nastaven tak, aby rovněž aktualizoval soubor lastlog. Například:
session required pam_lastlog.so nowtmp
HISTORIE¶
Tento nástroj su byl odvozen z su v balíku coreutils, který byl založen na implementaci Davida MacKenzie. Verze v util-linux byl přepsána Karlem Žákem.
DALŠÍ INFORMACE¶
setpriv(1), login.defs(5), shells(5), pam(8), runuser(1)
HLÁŠENÍ CHYB¶
Pro hlášení chyb (anglicky) použijte systém pro sledování problémů na <https://github.com/util-linux/util-linux/issues>.
TIRÁŽ¶
Příkaz su je součástí balíku util-linux, který lze stáhnout z archivu jádra Linuxu <https://www.kernel.org/pub/linux/utils/util-linux/>.
2024-09-09 | util-linux 2.40.2 |