Skip to main content

Cos'è Sudo in Linux?

Weekly Torah Portion: Re'eh (Giugno 2025)

Weekly Torah Portion: Re'eh (Giugno 2025)
Anonim

Quando si eseguono applicazioni amministrative in Linux, è possibile utilizzare il comando su ("switch user") per passare al superuser (root), oppure è possibile utilizzare il comando sudo ("super user do").

Un modo per sapere quando utilizzare il comando sudo è se si sta tentando di eseguire comandi nel terminale solo per incontrare gli errori "accesso negato" o "operazione richiede privilegi di superutente". Questi errori possono verificarsi se la distribuzione Linux - come Ubuntu - non abilita l'uso dell'utente root. Una volta che si usa il comando sudo, quel comando specifico può essere eseguito con diritti elevati.

Tuttavia, se si sceglie invece di utilizzare il comando su, si passa l'utente intero a root, il che significa che anche dopo il primo comando, ogni successivo viene eseguito anche con le credenziali di root. Ciò rende davvero facile eseguire accidentalmente comandi elevati, che potrebbero causare molti danni se non si presta attenzione.

Per riformulare: sudo funziona solo per ogni comando che inizia come "sudo", mentre su abilita ogni comando in tale prompt per l'esecuzione come superutente senza la necessità di digitare sudo o su prima di ciascuno.

Come funziona

Sebbene funzionino in modo diverso, puoi confrontare il comando sudo con il prompt che potresti vedere in Windows o macOS. Quando viene richiesto in questi sistemi operativi se si desidera continuare a eseguire quell'azione specifica, si incontra un pulsante in cui si conferma di voler eseguire l'azione con privilegi elevati e, a volte, si potrebbe anche dover inserire la password di un amministratore .

Molto simile a quei sistemi operativi, Linux usa il comando sudo come un muro tra le normali attività e quelle amministrative, in modo tale che devi confermare per certo che vuoi fare qualunque cosa venga eseguita dal comando. Ancora più simile è il comando runas in Windows; come in Linux, il comando runas funziona dalla riga di comando per avviare un file con credenziali di un determinato utente, spesso un amministratore.

Mancia: Se non sei sicuro se stai usando sudo o su, guarda il carattere finale sulla riga di comando. Se è un cancelletto (#), hai effettuato l'accesso come root.

Informazioni sul comando Sudo

In Linux, sudo (pronunciato "causa dough") consente a un amministratore di sistema di fornire a determinati utenti o gruppi di utenti la possibilità di eseguire alcuni o tutti i comandi come root durante la registrazione di tutti i comandi e gli argomenti. Tuttavia, non è un sostituto per la shell.

Quando si inserisce "sudo" davanti a qualsiasi comando nel terminale, il seguente viene eseguito con privilegi elevati, motivo per cui è la soluzione per privilegiare gli errori correlati. È necessario se si desidera eseguire comandi considerati attività amministrative.

Sudo opera su base per comando. Le funzionalità includono la possibilità di limitare i comandi che un utente può eseguire su base host, una copiosa registrazione di ciascun comando per fornire una chiara traccia di controllo di chi ha fatto cosa, un timeout configurabile del comando sudo e la possibilità di utilizzare lo stesso file di configurazione su molte macchine diverse.

Esempio di comando Sudo

Un utente standard senza privilegi amministrativi potrebbe immettere un comando in Linux per installare un software:

dpkg -i software.deb

Il comando restituisce un errore perché una persona senza privilegi amministrativi non può installare il software. Tuttavia, il comando sudo viene in soccorso. Invece, il comando corretto per questo utente è:

sudo dpkg -i software.deb

Questa volta il software si installa. Ciò presuppone che una persona con privilegi amministrativi abbia precedentemente configurato Linux per consentire all'utente di installare il software o, se richiesto con una password, di inserire correttamente la password.

Nota: È inoltre possibile configurare Linux per impedire ad alcuni utenti di utilizzare il comando sudo.