Su (Unix): differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Ianezz (discussione | contributi)
Ianezz (discussione | contributi)
m corsivo per i termini stranieri. Altre piccole correzioni
Riga 1:
{{titolo errato|su}}
'''su''' (da '''s'''witch '''u'''ser o '''s'''ubstitute '''u'''ser) è un comando dei [[Sistema operativo|sistemi operativi]] [[Unix]] e [[Unix-like]] 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à.
 
''su'' viene tipicamente usato da utenti non privilegiati per avviare una ''shell'' nei panni di [[Root (utente)|root]], e dall'utenteda ''root'' per avviare una ''shell'' nei panni di utenti ordinari.
 
Normalmente ''su'' richiede di effettuare un'[[autenticazione]] con le credenziali dell'utente di cui si vuole assumere l'identità. Ciò non è richiesto quando ''su'' viene eseguito dall'utente ''root''.
Riga 24:
Il parametro ''utente'' specifica il nome dell'utente di cui si desidera assumere l'identità. Se non specificato si assume sia ''root''.
 
Specificando il segnoun menotrattino "<tt>-</tt>" si indica di avviare una ''shell di login'', che offre un ambiente sostanzialmente identico a quello che si otterrebbe effettuando illa procedura di ''[[login]]'' testuale nei panni dell'utente di cui si assume l'identità (ad esempio la [[directory]] corrente diventa quella 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 "<tt>-c ''riga_di_comando''</tt>", con la quale è possibile specificare una riga di ''comando'' da far eseguire, di fatto permettendo l'avvio diretto di altri programmi. Ad esempio "<tt>su alice -c 'ls -l'"</tt> avvia una nuova ''shell'' con l'identità dell'utente <tt>alice</tt>, e le passa i parametri "<tt>-c 'ls -l'</tt>", che tipicamente fanno si che la ''shell'' esegua il comando "<tt>ls -l</tt>".
Riga 37:
 
 
L'utente ''root'' avvia una ''shell'' nei panni dell'utente non privilegiato ''alice'':
su - alice