'\" t .\" Title: runuser .\" Author: [see the "AUTHOR(S)" section] .\" Generator: Asciidoctor 2.0.23 .\" Date: 2025-03-29 .\" Manual: Comenzi utilizator .\" Source: util-linux 2.41 .\" Language: English .\" .TH "RUNUSER" "1" "2025-03-29" "util\-linux 2.41" "Comenzi utilizator" .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 "NUME" runuser \- execută o comandă cu ID\-ul înlocuitorului de utilizator și grup .SH "REZUMAT" .sp \fBrunuser\fP [opțiuni] \fB\-u\fP \fIutilizator\fP [[\-\-] \fIcomanda\fP [\fIargument\fP...]] .sp \fBrunuser\fP [opțiuni] [\fB\-\fP] [\fIutilizator\fP [\fIargument\fP...]] .SH "DESCRIERE" .sp \fBrunuser\fP poate fi utilizat pentru a rula comenzi cu un ID de utilizator și de grup substituit. Dacă opțiunea \fB\-u\fP nu este furnizată, \fBrunuser\fP revine la semantica compatibilă cu \fBsu\fP și se execută un shell. Diferența dintre comenzile \fBrunuser\fP și \fBsu\fP constă în faptul că \fBrunuser\fP nu solicită o parolă (deoarece poate fi executat numai de către utilizatorul root) și utilizează o configurație PAM diferită. Comanda \fBrunuser\fP nu trebuie să fie instalată cu permisiuni set\-user\-ID. .sp Dacă sesiunea PAM nu este necesară, atunci soluția recomandată este utilizarea comenzii \fBsetpriv\fP(1). .sp Atunci când este apelat fără argumente, \fBrunuser\fP rulează în mod implicit un shell interactiv ca \fIroot\fP. .sp Pentru compatibilitate cu versiunile anterioare, \fBrunuser\fP nu modifică în mod implicit directorul curent și stabilește doar variabilele de mediu \fBHOME\fP și \fBSHELL\fP (plus \fBUSER\fP și \fBLOGNAME\fP dacă \fIutilizatorul\fP țintă nu este root). Această versiune a \fBrunuser\fP utilizează PAM pentru gestionarea sesiunilor. .sp Rețineți că \fBrunuser\fP folosește în toate cazurile PAM (pam_getenvlist()) pentru a efectua modificarea finală a mediului. Opțiunile din linia de comandă, cum ar fi \fB\-\-login\fP și \fB\-\-preserve\-environment\fP, afectează mediul înainte ca acesta să fie modificat de PAM. .sp Începând cu versiunea 2.38, \fBrunuser\fP reinițiază limitele de resurse de proces RLIMIT_NICE, RLIMIT_RTPRIO, RLIMIT_FSIZE, RLIMIT_AS și RLIMIT_NOFILE. .SH "OPȚIUNI" .sp \fB\-c\fP, \fB\-\-command\fP=\fIcomanda\fP .RS 4 Pasează \fIcomanda\fP către shell cu opțiunea \fB\-c\fP. .RE .sp \fB\-f\fP, \fB\-\-fast\fP .RS 4 Pasează \fB\-f\fP către shell, care poate fi sau nu util, în funcție de shell. .RE .sp \fB\-g\fP, \fB\-\-group\fP=\fIgrup\fP .RS 4 Grupul primar care urmează să fie utilizat. Această opțiune este permisă numai pentru utilizatorul root. .RE .sp \fB\-G\fP, \fB\-\-supp\-group\fP=\fIgrup\fP .RS 4 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 \fB\-\-group\fP. .RE .sp \fB\-\fP, \fB\-l\fP, \fB\-\-login\fP .RS 4 Pornește shell\-ul ca un shell de autentificare cu un mediu similar unei autentificări reale: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} șterge toate variabilele de mediu, cu excepția \fBTERM\fP și a variabilelor specificate de \fB\-\-whitelist\-environment\fP .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} inițializează variabilele de mediu \fBHOME\fP, \fBSHELL\fP, \fBUSER\fP, \fBLOGNAME\fP și \fBPATH\fP .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} schimbă la directorul principal al utilizatorului țintă .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} stabilește argv[0] din shell la „\fB\-\fP” pentru a face din shell un shell de autentificare .RE .RE .sp \fB\-m\fP, \fB\-p\fP, \fB\-\-preserve\-environment\fP .RS 4 Păstrează întregul mediu, adică nu stabilește \fBHOME\fP, \fBSHELL\fP, \fBUSER\fP sau \fBLOGNAME\fP. Opțiunea este ignorată dacă este specificată opțiunea \fB\-\-login\fP. .RE .sp \fB\-P\fP, \fB\-\-pty\fP .RS 4 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, \fBrunuser \-\-pty\fP \fB\-u\fP \fIutilizator\fP \fB\-\-\fP \fIcomanda\fP \fB&\fP). Dacă pseudo\-terminalul este activat, atunci \fBrunuser\fP funcționează ca un proxy între sesiuni (sincronizează intrarea și ieșirea standard). .sp 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, \fBecho "date" | runuser \-\-pty \-u\fP \fIutilizator\fP), atunci fanionul \fBECHO\fP pentru pseudo\-terminal este dezactivat pentru a evita o ieșire dezordonată. .RE .sp \fB\-s\fP, \fB\-\-shell\fP=\fIshell\fP .RS 4 Rulează \fIshell\-ul\fP specificat în locul celui implicit. Shell\-ul care urmează să fie executat este selectat în conformitate cu următoarele reguli, în ordine: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} shell\-ul specificat cu \fB\-\-shell\fP .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} shell\-ul specificat în variabila de mediu \fBSHELL\fP în cazul în care se utilizează opțiunea \fB\-\-preserve\-environment\fP .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} shell\-ul listat în fișierul passwd al utilizatorului țintă .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} /bin/sh .sp Dacă utilizatorul țintă are un shell restricționat (adică nu este listat în \fI/etc/shells\fP), atunci opțiunea \fB\-\-shell\fP și variabilele de mediu \fBSHELL\fP sunt ignorate, cu excepția cazului în care utilizatorul apelant este root. .RE .RE .sp \fB\-\-session\-command=\fP\fIcomanda\fP .RS 4 La fel ca \fB\-c\fP, dar nu creează o sesiune nouă. (Neindicată.) .RE .sp \fB\-T\fP, \fB\-\-no\-pty\fP .RS 4 Nu creează un pseudo\-terminal, opusul lui \fB\-\-pty\fP și \fB\-P\fP. Rețineți că rularea fără un pseudo\-terminal deschide riscul de securitate al escaladării privilegiilor prin injectarea comenzilor ioctl TIOCSTI/TIOCLINUX. .RE .sp \fB\-u\fP, \fB\-\-user\fP=\fIutilizator\fP .RS 4 Rulează \fIcomanda\fP cu ID\-ul de utilizator și ID\-ul de grup efective ale numelui de utilizator \fIutilizator\fP. .RE .sp \fB\-w\fP, \fB\-\-whitelist\-environment\fP=\fIlista\fP .RS 4 Nu se reinițializează variabilele de mediu specificate în \fIlista\fP separată prin virgule atunci când se șterge mediul pentru \fB\-\-login\fP. \fILista\fP albă este ignorată pentru variabilele de mediu \fBHOME\fP, \fBSHELL\fP, \fBUSER\fP, \fBLOGNAME\fP și \fBPATH\fP. .RE .sp \fB\-h\fP, \fB\-\-help\fP .RS 4 Afișează acest mesaj de ajutor și iese. .RE .sp \fB\-V\fP, \fB\-\-version\fP .RS 4 Afișează versiunea și iese. .RE .SH "FIȘIERE DE CONFIGURARE" .sp \fBrunuser\fP citește fișierele de configurare \fI/etc/default/runuser\fP și \fI/etc/login.defs\fP. Următoarele elemente de configurare sunt relevante pentru \fBrunuser\fP: .sp \fBENV_PATH\fP (șir) .RS 4 Definește variabila de mediu PATH pentru un utilizator obișnuit. Valoarea implicită este \fI/usr/local/bin:/bin:/usr/bin\fP. .RE .sp \fBENV_ROOTPATH\fP (șir), \fBENV_SUPATH\fP (șir) .RS 4 Definește variabila de mediu \fBPATH\fP pentru root. \fBENV_SUPATH\fP are prioritate. Valoarea implicită este \fI/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin\fP. .RE .sp \fBALWAYS_SET_PATH\fP (boolean) .RS 4 Dacă este stabilită la \fIyes\fP și \fB\-\-login\fP și \fB\-\-preserve\-environment\fP nu au fost specificate, \fBrunuser\fP inițializează \fBPATH\fP. .RE .sp Variabila de mediu \fBPATH\fP poate fi diferită pe sistemele în care \fI/bin\fP și \fI/sbin\fP sunt comasate în \fI/usr\fP; această variabilă este, de asemenea, afectată de opțiunea de linie de comandă \fB\-\-login\fP și de setarea sistemului PAM (de exemplu, \fBpam_env\fP(8)). .SH "STARE DE IEȘIRE" .sp \fBrunuser\fP 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, \fBrunuser\fP returnează numărul semnalului plus 128. .sp Stare de ieșire generată de \fBrunuser\fP însuși: .sp 1 .RS 4 Eroare generică înainte de executarea comenzii solicitate .RE .sp 126 .RS 4 Comanda solicitată nu a putut fi executată .RE .sp 127 .RS 4 Comanda solicitată nu a fost găsită .RE .SH "FIȘIERE" .sp \fI/etc/pam.d/runuser\fP .RS 4 fișierul de configurare PAM implicit .RE .sp \fI/etc/pam.d/runuser\-l\fP .RS 4 Fișierul de configurare PAM dacă este speciicată opțiunea \fB\-\-login\fP .RE .sp \fI/etc/default/runuser\fP .RS 4 fișierul de configurare logindef specific \fBrunuser\fP .RE .sp \fI/etc/login.defs\fP .RS 4 fișierul de configurare globală logindef .RE .SH "ISTORIC" .sp Această comandă \fBrunuser\fP a fost derivată din \fBsu\fP de la coreutils, care s\-a bazat pe o implementare de către David MacKenzie, și din comanda \fBrunuser\fP de la Fedora de către Dan Walsh. .SH "CONSULTAȚI ȘI" .sp \fBsetpriv\fP(1), \fBsu\fP(1), \fBlogin.defs\fP(5), \fBshells\fP(5), \fBpam\fP(8) .SH "RAPORTAREA ERORILOR" .sp Pentru rapoarte de eroare, folosiți \c .URL "https://github.com/util\-linux/util\-linux/issues" "sistemul de urmărire al erorilor" "." .SH "DISPONIBILITATE" .sp Comanda \fBrunuser\fP face parte din pachetul util\-linux care poate fi descărcat de la \c .URL "https://www.kernel.org/pub/linux/utils/util\-linux/" "Linux Kernel Archive" "."