Privilegi di amministrazione

I privilegi di amministratore permettono di svolgere ogni applicazione nel sistema. E su sistemi operativi Unix e Unix-like, come lo è GNU/Linux e quindi Debian, questi privilegi sono assegnati tradizionalmente all'utente root (radice).

È altamente sconsigliato accedere al sistema come tale utente, che andrebbe utilizzato esclusivamente per lo stretto necessario a svolgere attività di amministrazione, quali per esempio l'installazione, l'aggiornamento o la rimozione di software tramite APT, o per cambiare i file di configurazione del sistema.

Una volta effettuato il login con il proprio utente non privilegiato, per poter diventare root ed avere quindi la possibilità di svolgere operazioni di amministrazione, è sufficiente eseguire il comando:

su -

Verrà richiesta la password di root e sarà eseguito l’accesso.

Noterete che il prompt della shell è cambiato, passando da:

$

(che identifica un utente normale) (alcune shell come zsh però utilizzano il simbolo % al posto di $)
a:

#

(che identifica l'utente root)

Per essere precisi è stata avviata una nuova shell di login, e le è stato assegnato il controllo della console virtuale o del terminale (all'interno di una sessione grafica) utilizzato.

Per ritornare utenti normali è necessario terminare la shell, così che il controllo ritorni a quella che si utilizzava precedentemente, con i soli privilegi di utente. Quindi basta digitare il comando:

exit

oppure più velocemente anche premere CTRL-d.

Nei comandi riportati in tutta questa Wiki, e in generale nella documentazione di tutti i sistemi Unix, il prompt è riportato prima di ogni comando da digitare per indicare se richiede o meno i privilegi di amministratore.


Un'altra possibilità è effettuare un login come root per lo stretto necessario a eseguire i comandi che richiedono i privilegi di amministratore. È sconsigliato da interfaccia grafica, per via dell'elevato numero di applicazioni che riceverebbero tali privilegi.
Si può invece passare a una console virtuale non utilizzata (per esempio /dev/tty1), effettuare il login come root, eseguire i soli comandi per cui sono necessari i privilegi di amministratore e poi effetuare subito dopo il logout, ritornando alla propria console virtuale o comunque a quella utilizzata dal server grafico.
Per esempio, ecco la procedura per passi:

  • digitare Ctrl-Alt-F1 per passare a tty1;
  • digitare SysRq+K con Alt-R Sist-k o Alt-Stamp-k per generare una nuova console sicura, terminando tutte le eventuali applicazioni collegate;
  • effettuare il login con root e la password corrispondente;
  • digitare i comandi che richiedono privilegi di amministrazione, e soltanto quelli (non usare la shell per altre attività!);
  • uscire con exit per terminare la shell;
  • digitare Alt-Freccia destra per passare alla console successiva, e ripetere fino a tornare a quella di partenza.

Questo metodo, anche se molto più laborioso degli altri, è l'unico sicuro se l'account dell'utente utilizzato per su o sudo è stato compromesso, e ha il vantaggio di appoggiarsi unicamente sulla sicurezza del sistema.


Come ultima alternativa, è possibile anche ricorrere a sudo, che di default chiede la propria password anziché quella dell'utente root. Solitamente, dopo averlo installato e configurato, si scrive sudo prima di ogni comando da eseguire come amministratore.
Per esempio:

$ whoami

restituisce il proprio nome utente, ma:

$ sudo whoami

restituisce "root", ed è equivalente a:

$ su -
# whoami
# exit

Per maggiori informazioni si rimanda a Configurare SUDO per gestire le attività degli amministratori.