Su (Unix): differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
TXiKiBoT (discussione | contributi)
m Bot: Aggiungo: ro:Su (Unix)
m ho tolto la traduzione errata di "switch user"
 
(14 versioni intermedie di 14 utenti non mostrate)
Riga 1:
{{Titolo minuscolo}}
'''su''' (abbreviazione dalla [[lingua inglese]] di '''''s'''witch '''u'''ser'' o di '''''s'''ubstitute '''u'''ser'', ''cambia utente'' o ''sostituisci utente'') è un [[istruzione (informatica)|comando]] dei [[Sistema operativo|sistemi operativi]] [[Unix]] e, [[Unix-like]] e Linux che permette di avviare una ''[[Shell (informatica)|shell testuale]]'' assumendo l'identità di un altro utente del sistema. La ''shell'' avviata è quella predefinita per l'utente di cui si assume l'identità, ed è possibile passarle parametri per farle ad esempio eseguire direttamente un comando, che a questo punto sarà eseguito con la nuova identità.
 
''<kbd>su''</kbd> viene tipicamente usato da utenti non privilegiati per avviare una ''shell'' nei panni di [[Root (utente)|root]], e da ''root'' per avviare una ''shell'' nei panni di utenti ordinari.
 
Normalmente ''<kbd>su''</kbd> richiede di effettuare un'[[autenticazione]] con le credenziali dell'utente di cui si vuole assumere l'identità. Ciò non è richiesto quando ''<kbd>su''</kbd> viene eseguito dall'utente ''root''.
 
Su alcuni sistemi (non [[GNU/Linux]]<ref>{{cita web
|url =http https://www.gnu.org/software/coreutils/manual/html_node/su-invocation.html#index-MIT-AI-lab-2101
|titolo = Why GNU su does not support the ‘wheel’ group
|accesso = 17-05-2008
|lingua = en
|opera = GNU Coreutils manual
|opera=GNU Coreutils manual}}</ref>, anche se tecnicamente possibile<ref>{{cita web
|urlmorto = sì
|urlarchivio = https://web.archive.org/web/20130807001725/http://www.gnu.org/software/coreutils/manual/html_node/su-invocation.html#index-MIT-AI-lab-2101
|dataarchivio = 7 agosto 2013
|opera=GNU Coreutils manual}}</ref>, anche se tecnicamente possibile<ref>{{cita web
|url=http://www.faqs.org/docs/securing/chap5sec43.html
|titolo=Blocking; su to root, by one and sundry
Riga 17 ⟶ 21:
|lingua=en
|opera=Securing and Optimizing Linux: Red Hat Edition - A Hands on Guide
}}</ref>) solo gli utenti che appartengono al gruppo speciale ''wheel'' possono assumere l'identità di ''root'' tramite il comando ''<kbd>su''</kbd>.
 
In [[systemd]] il comando <kbd>su</kbd> è stato sostituito da <kbd>machinectl shell</kbd>.<ref>{{cita web|url=https://tlhp.cf/lennart-poettering-su/|titolo=Lennart Poettering merged “su” command replacement into systemd: Test Drive on Fedora Rawhide|data=28 agosto 2015|urlmorto=sì|urlarchivio=https://web.archive.org/web/20150904232722/https://tlhp.cf/lennart-poettering-su/|dataarchivio=4 settembre 2015}}</ref>
== Uso ==
 
La sintassi tipica di ''su'' è la seguente:
== UsoSintassi ==
su [-] [''utente'' [''arg1'' …] ]
La sintassi tipica di ''<kbd>su''</kbd> è la seguente:
su [-] [''utente'' [''arg1'' …] ] [-]
Il parametro facoltativo ''utente'' specifica il nome dell'utente di cui si desidera assumere l'identità. Se non specificato si assume sia ''root''.
 
Specificando un trattino "<ttkbd>-</ttkbd>" si indica di avviare una ''shell di login'', che offre un ambiente sostanzialmente identico a quello che si otterrebbe effettuando la procedura di ''[[login]]'' testuale nei panni dell'utente di cui si assume l'identità (ad esempio la [[directory corrente]] viene impostata alla [[home directory]] dell'utente di cui si assume l'identità). Non specificandolo si ottiene invece un ambiente che in parte deriva da quello corrente.
 
I parametri facoltativi ''arg'' sono passati direttamente come parametri alla ''shell'' avviata con l'identità del nuovo utente; molte ''shell'' (come [[Bash]] o la [[Korn shell]]) supportano l'opzione "<ttkbd>-c ''riga_di_comando''</ttkbd>", con la quale è possibile specificare loro un comando da eseguire, di fatto permettendo l'avvio diretto di altri programmi. Ad esempio "<ttkbd>su alice -c 'ls -l'"</ttkbd> avvia una nuova ''shell'' con l'identità dell'utente <ttkbd>alice</ttkbd>, e le passa i parametri "<ttkbd>-c 'ls -l'</ttkbd>", che tipicamente fanno si che la ''shell'' esegua il comando "<ttkbd>ls -l</ttkbd>".
 
== Esempi ==
Riga 37 ⟶ 43:
L'utente ''root'' avvia una ''shell'' nei panni dell'utente non privilegiato ''alice'':
su - alice
 
L'utente ''root'' assume l'identità dell'utente non privilegiato ''alice'':
su alice
 
== Note ==
Riga 48 ⟶ 57:
 
[[Categoria:Unix]]
[[Categoria:Comandi Unix/Linux]]
 
[[ar:سو (يونكس)]]
[[cs:Su (Unix)]]
[[de:Su (Unix)]]
[[en:Su (Unix)]]
[[es:Su (Unix)]]
[[fa:Su]]
[[fr:Su (Unix)]]
[[hu:Su (Unix)]]
[[ja:Su (Unix)]]
[[ko:Su (유닉스)]]
[[nl:Su (Unix)]]
[[pl:Su (Unix)]]
[[pt:Su]]
[[ro:Su (Unix)]]
[[ru:Su]]
[[sr:Su (јуникс)]]