Introduzione
Il comando su
viene utilizzato per modificare l'utente corrente in un altro utente specificato. Ad esempio, il comando su root
modificherà l'utente corrente in root.
Il comando su -
funziona in modo simile, ma include anche l'impostazione delle variabili d'ambiente dell'utente specificato. Ad esempio, se l'utente root ha una variabile d'ambiente $HOME
impostata su /root
, questa variabile verrà impostata per l'utente corrente quando si utilizza il comando su - root
.
In pratica, il comando su
cambia solo l'utente corrente, mentre il comando su -
cambia sia l'utente corrente che le variabili d'ambiente dell'utente specificato.
Ad esempio, per passare all'utente root ed eseguire una shell di login, dovresti usare il seguente comando:
su - root
Per passare all'utente root senza eseguire una shell di login, dovresti usare il seguente comando:
su root
Conclusione
In sintesi, la differenza tra su
e su -
è che su
passa all'utente specificato senza eseguire una shell di login, mentre su -
passa all'utente specificato ed esegue una shell di login. È importante comprendere questa differenza, in quanto può influire sull'ambiente in cui si lavora quando si passa a un altro account utente.