Provided by: util-linux-locales_2.39.3-9ubuntu6.3_all bug

JMÉNO

       su - spustí shell pod jiným uživatelským a skupinovým ID

POUŽITÍ

       su [přepínače] [-] [uživatel [argument…]]

POPIS

       su dovoluje příkazům běžet se změněným ID uživatele a skupiny.

       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 je navrženo pro neprivilegované uživatele. Doporučené řešení pro privilegované uživatele (např.
       skripty spouštěné rootem) je použít program bez SUID runuser(1), který nepotřebuje autentizaci a přitom
       poskytuje samostatné nastavení PAM. Není-li relace PAM vůbec potřeba, pak doporučeným řešením je příkaz
       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
           Předá příkaz shellu pomocí přepínače -c.

       -f, --fast
           Předá shellu -f, což může, nebo nemusí být užitečné v závislosti na shellu.

       -g, --group=skupina
           Určuje primární skupinu. Tento přepínač je dostupný pouze uživateli root.

       -G, --supp-group=skupina
           Určuje doplňkovou skupinu. Tento přepínač je dostupný pouze uživateli root. První zadaná doplňková
           skupina se rovněž použije jako primární skupina, nebyl-li zadán přepínač --group.

       -, -l, --login
           Spustí shell jako přihlašovací shell s prostředím podobným skutečnému přihlášení:

           •   vyčistí všechny proměnné prostředí kromě TERM a proměnných zadaných v --whitelist-environment

           •   inicializuje proměnné prostředí HOME, SHELL, USER, LOGNAME a PATH

           •   přejde do domovského adresáře cílového uživatele

           •   nastaví argv[0] shellu na '-', aby se shell stal shellem přihlašovacím

       -m, -p, --preserve-environment
           Zachová celé prostředí. Tj. nenastaví HOME, SHELL, USER, ani LOGNAME. Tento přepínač se ignoruje,
           byl-li uveden přepínač --login.

       -P, --pty
           Pro relaci vytvoří pseudoterminál. Nezávislý terminál poskytuje větší bezpečí, neboť uživatel nesdílí
           terminál s původní relací. Toho lze využít k zabránění vložení řídícího volání TIOCSTI terminálu a
           jiným bezpečnostním útokům na deskriptory souboru terminálu. Rovněž celou relaci je možné přesunout
           na pozadí (např. su --pty - uživatel -c aplikace &). Je-li pseudoterminál zapnut, pak su bude
           pracovat jako prostředník mezi relacemi (synchronizovat standardní vstup a výstup).

           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
           Spustí zadaný shell namísto výchozího. Který shell by se měl spustit, se vybírá na základě
           následujících pravidel v tomto pořadí:

           •   shell zadaný pomocí --shell

           •   shell určený proměnnou prostředí SHELL, je-li použit přepínač --preserve-environment

           •   shell uvedený v záznamu passwd cílového uživatele

           •   /bin/sh

       Je-li shell cílového uživatele omezený (tj. neuvedený v /etc/shells), přepínač --shell a proměnná
       prostředí SHELL jsou ignorovány, pokud volajícím není root.

       --session-command=příkaz
           Stejné jako -c, ale nevytvoří novou relaci. (Nedoporučuje se.)

       -w, --whitelist-environment=seznam
           Neresetuje proměnné prostředí uvedené v čárkou odděleném seznamu, když se čistí prostředí pro
           --login. Tento seznam se ignoruje pro proměnné prostředí HOME, SHELL, USER, LOGNAME a PATH.

       -h, --help
           Zobrazí text nápovědy a skončí.

       -V, --version
           Zobrazí verzi a skončí.

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 čte konfigurační soubory /etc/default/su a /etc/login.defs. Následující konfigurační položky jsou
       relevantní pro su:

       FAIL_DELAY (číslo)
           Zpoždění v sekundách v případě selhání přihlášení. Hodnota musí být nezáporné celé číslo.

       ENV_PATH (řetězec)
           Určuje proměnnou prostředí PATH pro běžné uživatele. Výchozí hodnota je /usr/local/bin:/bin:/usr/bin.

       ENV_ROOTPATH (řetězec), ENV_SUPATH (řetězec)
           Určuje proměnnou prostředí PATH pro uživatele root. ENV_SUPATH má přednost. Výchozí hodnota je
           /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin.

       ALWAYS_SET_PATH (pravdivostní hodnota)
           Je-li nastaveno na yes a --login a --preserve-environment nebyly-li zadány, su inicializuje PATH.

           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

       Nástroj su běžně vrací návratovou hodnotu příkazu, který spustil. Byl-li příkaz zabit signálem, su vrátí
       číslo signálu plus 128.

       Návratová hodnota vyrobená nástrojem su samotným:

       1
           Obecná chyba před spuštěním požadovaného příkazu

       126
           Požadovaný příkaz nebylo možné spustit

       127
           Požadovaný příkaz nebyl nalezen

SOUBORY

       /etc/pam.d/su
           výchozí konfigurační soubor PAM

       /etc/pam.d/su-l
           konfigurační soubor PAM, byl-li zadán --login

       /etc/default/su
           konfigurační soubor logindef určený tento nástroj

       /etc/login.defs
           globální konfigurační soubor logindef

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/>.

util-linux 2.39.3                                  2025-06-05                                              SU(1)