Provided by: util-linux-locales_2.41-4ubuntu3_all bug

NUME

       runuser - execută o comandă cu ID-ul înlocuitorului de utilizator și grup

REZUMAT

       runuser [opțiuni] -u utilizator [[--] comanda [argument...]]

       runuser [opțiuni] [-] [utilizator [argument...]]

DESCRIERE

       runuser poate fi utilizat pentru a rula comenzi cu un ID de utilizator și de grup substituit. Dacă
       opțiunea -u nu este furnizată, runuser revine la semantica compatibilă cu su și se execută un shell.
       Diferența dintre comenzile runuser și su constă în faptul că runuser nu solicită o parolă (deoarece poate
       fi executat numai de către utilizatorul root) și utilizează o configurație PAM diferită. Comanda runuser
       nu trebuie să fie instalată cu permisiuni set-user-ID.

       Dacă sesiunea PAM nu este necesară, atunci soluția recomandată este utilizarea comenzii setpriv(1).

       Atunci când este apelat fără argumente, runuser rulează în mod implicit un shell interactiv ca root.

       Pentru compatibilitate cu versiunile anterioare, runuser nu modifică în mod implicit directorul curent și
       stabilește doar variabilele de mediu HOME și SHELL (plus USER și LOGNAME dacă utilizatorul țintă nu este
       root). Această versiune a runuser utilizează PAM pentru gestionarea sesiunilor.

       Rețineți că runuser folosește în toate cazurile PAM (pam_getenvlist()) pentru a efectua modificarea
       finală a mediului. Opțiunile din linia de comandă, cum ar fi --login și --preserve-environment, afectează
       mediul înainte ca acesta să fie modificat de PAM.

       Începând cu versiunea 2.38, runuser reinițiază limitele de resurse de proces RLIMIT_NICE, RLIMIT_RTPRIO,
       RLIMIT_FSIZE, RLIMIT_AS și RLIMIT_NOFILE.

OPȚIUNI

       -c, --command=comanda
           Pasează comanda către shell cu opțiunea -c.

       -f, --fast
           Pasează -f către shell, care poate fi sau nu util, în funcție de shell.

       -g, --group=grup
           Grupul primar care urmează să fie utilizat. Această opțiune este permisă numai pentru utilizatorul
           root.

       -G, --supp-group=grup
           Specifică un grup suplimentar. Această opțiune este disponibilă numai pentru utilizatorul root.
           Primul grup suplimentar specificat este, de asemenea, utilizat ca grup primar dacă nu este
           specificată opțiunea --group.

       -, -l, --login
           Pornește shell-ul ca un shell de autentificare cu un mediu similar unei autentificări reale:

           •   șterge toate variabilele de mediu, cu excepția TERM și a variabilelor specificate de
               --whitelist-environment

           •   inițializează variabilele de mediu HOME, SHELL, USER, LOGNAME și PATH

           •   schimbă la directorul principal al utilizatorului țintă

           •   stabilește argv[0] din shell la „-” pentru a face din shell un shell de autentificare

       -m, -p, --preserve-environment
           Păstrează întregul mediu, adică nu stabilește HOME, SHELL, USER sau LOGNAME. Opțiunea este ignorată
           dacă este specificată opțiunea --login.

       -P, --pty
           Creează un pseudo-terminal pentru sesiune. Terminalul independent oferă o securitate mai bună,
           deoarece utilizatorul nu împarte un terminal cu sesiunea originală. Acest lucru poate fi utilizat
           pentru a evita injectarea ioctl TIOCSTI terminalului și alte atacuri de securitate împotriva
           descriptorilor de fișiere terminal. Întreaga sesiune poate fi, de asemenea, mutată în fundal (de
           exemplu, runuser --pty -u utilizator -- comanda &). Dacă pseudo-terminalul este activat, atunci
           runuser funcționează ca un proxy între sesiuni (sincronizează intrarea și ieșirea standard).

           Această caracteristică este concepută în special pentru sesiunile interactive. În cazul în care
           intrarea standard nu este un terminal, ci, de exemplu, o conductă (de exemplu, echo "date" | runuser
           --pty -u utilizator), atunci fanionul ECHO pentru pseudo-terminal este dezactivat pentru a evita o
           ieșire dezordonată.

       -s, --shell=shell
           Rulează shell-ul specificat în locul celui implicit. Shell-ul care urmează să fie executat este
           selectat în conformitate cu următoarele reguli, în ordine:

           •   shell-ul specificat cu --shell

           •   shell-ul specificat în variabila de mediu SHELL în cazul în care se utilizează opțiunea
               --preserve-environment

           •   shell-ul listat în fișierul passwd al utilizatorului țintă

           •   /bin/sh

               Dacă utilizatorul țintă are un shell restricționat (adică nu este listat în /etc/shells), atunci
               opțiunea --shell și variabilele de mediu SHELL sunt ignorate, cu excepția cazului în care
               utilizatorul apelant este root.

       --session-command=comanda
           La fel ca -c, dar nu creează o sesiune nouă. (Neindicată.)

       -T, --no-pty
           Nu creează un pseudo-terminal, opusul lui --pty și -P. Rețineți că rularea fără un pseudo-terminal
           deschide riscul de securitate al escaladării privilegiilor prin injectarea comenzilor ioctl
           TIOCSTI/TIOCLINUX.

       -u, --user=utilizator
           Rulează comanda cu ID-ul de utilizator și ID-ul de grup efective ale numelui de utilizator
           utilizator.

       -w, --whitelist-environment=lista
           Nu se reinițializează variabilele de mediu specificate în lista separată prin virgule atunci când se
           șterge mediul pentru --login. Lista albă este ignorată pentru variabilele de mediu HOME, SHELL, USER,
           LOGNAME și PATH.

       -h, --help
           Afișează acest mesaj de ajutor și iese.

       -V, --version
           Afișează versiunea și iese.

FIȘIERE DE CONFIGURARE

       runuser citește fișierele de configurare /etc/default/runuser și /etc/login.defs. Următoarele elemente de
       configurare sunt relevante pentru runuser:

       ENV_PATH (șir)
           Definește variabila de mediu PATH pentru un utilizator obișnuit. Valoarea implicită este
           /usr/local/bin:/bin:/usr/bin.

       ENV_ROOTPATH (șir), ENV_SUPATH (șir)
           Definește variabila de mediu PATH pentru root. ENV_SUPATH are prioritate. Valoarea implicită este
           /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin.

       ALWAYS_SET_PATH (boolean)
           Dacă este stabilită la yes și --login și --preserve-environment nu au fost specificate, runuser
           inițializează PATH.

       Variabila de mediu PATH poate fi diferită pe sistemele în care /bin și /sbin sunt comasate în /usr;
       această variabilă este, de asemenea, afectată de opțiunea de linie de comandă --login și de setarea
       sistemului PAM (de exemplu, pam_env(8)).

STARE DE IEȘIRE

       runuser returnează în mod normal starea de ieșire a comenzii pe care a executat-o. În cazul în care
       comanda a fost omorâtă de un semnal, runuser returnează numărul semnalului plus 128.

       Stare de ieșire generată de runuser însuși:

       1
           Eroare generică înainte de executarea comenzii solicitate

       126
           Comanda solicitată nu a putut fi executată

       127
           Comanda solicitată nu a fost găsită

FIȘIERE

       /etc/pam.d/runuser
           fișierul de configurare PAM implicit

       /etc/pam.d/runuser-l
           Fișierul de configurare PAM dacă este speciicată opțiunea --login

       /etc/default/runuser
           fișierul de configurare logindef specific runuser

       /etc/login.defs
           fișierul de configurare globală logindef

ISTORIC

       Această comandă runuser a fost derivată din su de la coreutils, care s-a bazat pe o implementare de către
       David MacKenzie, și din comanda runuser de la Fedora de către Dan Walsh.

CONSULTAȚI ȘI

       setpriv(1), su(1), login.defs(5), shells(5), pam(8)

RAPORTAREA ERORILOR

       Pentru rapoarte de eroare, folosiți sistemul de urmărire al erorilor
       <https://github.com/util-linux/util-linux/issues>.

DISPONIBILITATE

       Comanda runuser face parte din pachetul util-linux care poate fi descărcat de la Linux Kernel Archive
       <https://www.kernel.org/pub/linux/utils/util-linux/>.

util-linux 2.41                                    2025-07-02                                         RUNUSER(1)