Come risolvere l’errore “sudo: comando non trovato” su Linux

Come risolvere l’errore “sudo: comando non trovato” su Linux
Funzione di errore "Comando Sudo non trovato"

Si tratta di un problema comune e frustrante per i nuovi utenti Linux che stanno appena iniziando a usare il sistema.

Questo articolo spiega cosa significa questo errore e come risolverlo in Linux utilizzando metodi diversi.

Che cos’è il comando Sudo?

Cerchiamo innanzitutto di capire cos’è sudo. Il sudocomando, abbreviazione di superuser do , ti consente di eseguire attività che richiedono privilegi speciali di superutente (o root).

In Linux, gli account utente normali hanno permessi limitati per prevenire danni accidentali al sistema. Non puoi accedere a certi file o eseguire attività critiche. D’altro canto, l’utente root non ha tali limiti e può fare qualsiasi cosa sul sistema.

Usando sudoprima di un comando, elevi temporaneamente i tuoi privilegi. Ciò ti consente di eseguire comandi che altrimenti sarebbero limitati. Ad esempio, se devi installare software o modificare file di sistema, sudo ti fornisce i permessi necessari.

Usare sudo è un’opzione migliore rispetto all’accesso come utente root perché riduce il rischio di danneggiare accidentalmente il sistema. Quando esegui un comando con sudo, ti chiede la password utente (non la password root) per verificare la tua identità. Questo fornisce un ulteriore livello di sicurezza, dove solo gli utenti autorizzati possono eseguire operazioni sensibili.

Inoltre, esiste anche un modo per usare sudo senza password.

Cosa significa “Sudo: Comando non trovato”

L’errore sudo: command not found significa che il tuo sistema Linux non ha il pacchetto sudo disponibile. La maggior parte dei sistemi Linux ha sudo preinstallato, ma alcuni non ce l’hanno, come Arch e Gentoo Linux.

Tuttavia, a volte vedi ancora l’errore anche se il tuo sistema ha sudo installato. In quel caso, potrebbe essere perché la tua variabile PATH non contiene la directory in cui è installato sudo. La variabile PATH aiuta il sistema a individuare i comandi cercando nelle directory elencate.

Infine, potresti vedere questo errore se il tuo utente non ha i permessi giusti o se il PATH non è impostato correttamente. Inoltre, assicurati di aver scritto correttamente sudo.

Come risolvere l’errore Sudo: comando non trovato

Per correggere l’errore sudo: comando non trovato in Linux, è necessario installare sudo, aggiungere l’utente al gruppo sudo o aggiungere il percorso dell’eseguibile sudo alla variabile PATH.

Installazione di Sudo

Per iniziare, controlliamo prima se il tuo sistema ha un pacchetto sudo disponibile o meno. Puoi facilmente verificarlo interrogando il suo numero di versione. Se viene visualizzato, allora sai che sudo è installato nel tuo sistema:

verifica della versione di sudo nel terminale Linux.

Se il tuo sistema Linux non ha sudo installato, dovrai installarlo per risolvere l’errore. Per farlo, devi uscire dal tuo account utente e accedere come utente root.

Per farlo, basta digitare questo comando:

Ora, dopo essere diventato un utente root, puoi installare il pacchetto sudo nella tua distribuzione Linux utilizzando il gestore pacchetti predefinito.

Ad esempio, puoi installare sudo nelle distribuzioni basate su Ubuntu/Debian utilizzando apt:

Per installare sudo in una distribuzione basata su CentOS/Fedora o RHEL, eseguire quanto segue:

Utilizzare il seguente comando per installare il pacchetto sudo su Arch Linux:

Aggiungere un utente al gruppo Sudo

Dopo aver installato sudo, aggiungi il tuo utente non root al gruppo sudo per abilitare l’accesso root da superutente. Ad esempio, puoi aggiungere un utente al gruppo sudo nel sistema Ubuntu o Debian usando questo comando:

Su Fedora/CentOS o altre distribuzioni basate su RHEL, prova ad aggiungere un utente al gruppo wheel:

Inoltre, puoi verificare se l’utente è stato aggiunto o meno al gruppo eseguendo il comando seguente:

Dopo aver verificato, torna dall’utente root all’utente non root utilizzando il sucomando seguito dal tuo nome utente:

Ecco fatto! Ora puoi facilmente eseguire tutti i comandi come superutente usando sudo. Ad esempio, puoi verificare l’installazione di sudo aggiornando i pacchetti del tuo sistema Linux con questo comando:

aggiornamento del pacchetto tramite il gestore pacchetti apt.

Aggiungere la directory di Sudo alla variabile Path

Se hai installato sudo sul tuo sistema ma continui a ricevere l’errore sudo: command not found, controlla la variabile PATH e assicurati che includa la directory in cui è installato sudo.

Per prima cosa, determina la posizione del tuo comando sudo restituendo il suo percorso eseguibile:

verifica del percorso del sudo utilizzando il comando which.

Successivamente, utilizza il comando echo per verificare se la variabile PATH include questa directory (/usr/bin/):

Percorso variabile Sudo

Qui vedi un elenco di molte directory separate da due punti. Devi cercare “/usr/bin” o “/bin” nell’elenco perché sono le posizioni più comuni per sudo.

Se non hai la directory “/usr/bin” nel tuo PATH, puoi includerla con questo comando:

Inoltre, sostituisci “/usr/bin” con la directory effettiva che contiene l’eseguibile sudo.

L’esecuzione di questo comando aggiorna temporaneamente la variabile PATH, consentendo al sistema di trovare la directory sudo e risolvere gli errori bash in Linux. Tuttavia, questa modifica è temporanea e scomparirà quando si termina la sessione del terminale.

Per rendere permanente questa modifica per tutti gli utenti, devi aggiungere la directory sudo alla variabile PATH di sistema. Per farlo, diventiamo prima l’utente root:

Aprire il file “/etc/profile”:

Cerca la riga del percorso della variabile e aggiungi la directory “/usr/bin” alla variabile PATH.

Infine, salva il file premendo Ctrl+ Oe chiudi l’editor. Ora puoi lavorare con il comando sudo senza errori.

Avvolgendo

Hai corretto con successo l’errore sudo: comando non trovato installando sudo, aggiungendo il tuo utente al gruppo sudo e includendo il percorso dell’eseguibile sudo nella variabile PATH.

Inoltre, puoi anche esplorare le differenze tra sudo -s, su, sudo su e sudo -i. Potresti anche provare Run0, un nuovo programma di escalation dei privilegi che funge da valida alternativa a sudo.

Credito immagine: Haroon Javed

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *