GNU/Linux >> Linux Esercitazione >  >> Ubuntu

La differenza tra sudo e su spiegata

Introduzione

Il sudo e su i comandi appartengono al gruppo di comandi che ogni utente Linux incontra. Poiché sono simili nella sintassi e hanno funzioni sovrapposte, molti nuovi utenti non sono sicuri di quando utilizzare l'uno rispetto all'altro.

In questo tutorial, scopri tutto sulla differenza tra su e sudo .

sudo vs su

Entrambi su e sudo elevare i privilegi assegnati all'utente corrente.

La principale differenza tra i due è che su richiede la password dell'account di destinazione, mentre sudo richiede la password dell'utente corrente. Pertanto, è molto più sicuro usare sudo poiché non include lo scambio di informazioni sensibili.

Inoltre, è consigliabile attenersi a sudo durante l'esecuzione di attività che richiedono privilegi di root. In questo modo, all'utente corrente vengono concessi privilegi solo per il comando specificato. D'altra parte, su passa completamente all'utente root, esponendo l'intero sistema a potenziali modifiche accidentali.

Come usare il comando su

Il su comando sta per utente sostitutivo , e viene utilizzato principalmente per passare da un utente all'altro. Lo fa avviando una shell di accesso nella directory e nell'ambiente correnti (su ) o modificando completamente l'impostazione dell'utente di destinazione (su - ).

La sintassi principale è:

su [user_name]

o

su - [user_name]

Se il comando viene utilizzato senza l'argomento, passa al superutente (root ) conto.

Come funziona il comando su?

Per richiamare la shell di un altro utente all'interno della directory di lavoro/ambiente utente, utilizzare il su comando (senza trattino).

Ad esempio, per operare come utente chiamato phoenixnap , esegui:

su phoenixnap

Quindi, fornisci la password per phoenixnap account e premi Invio .

La shell dovrebbe cambiare, mostrando che ora hai l'accesso dell'operatore all'account specificato. Tuttavia, l'ambiente utente rimane lo stesso, come nell'immagine seguente:

Come funziona il comando su – [trattino]?

Per passare a un altro utente e passare a quell'ambiente utente di destinazione, utilizza il su - comando.

Pertanto, per passare a phoenixnap utente e passare alla sua shell di login, digitare il comando:

su - phoenixnap

Digita la password per phoenixnap account e premi Invio per confermare. L'output dovrebbe apparire simile a quello dell'immagine seguente:

Come usare il comando sudo

sudo viene utilizzato come prefisso per i comandi Linux, che consente all'utente connesso di eseguire comandi che richiedono privilegi di root. A differenza di su , il sudo comando in Linux richiede di fornire la password per l'utente che esegue il comando.

Tutte le attività amministrative ed eseguibili richiedono la massima autorizzazione (detenute da root). In questi casi, si consiglia di utilizzare sudo .

La sintassi principale è:

sudo [command]

Prima che il sistema esegua il comando, richiede la password dell'utente corrente.

Tieni presente che il sudo l'opzione può essere utilizzata solo dagli utenti che appartengono ai sudoers gruppo.

Aggiunta di un utente al gruppo Sudoers

Affinché un utente esegua un comando che richiede il sudo prefisso, deve far parte dei sudoers gruppo.

Per aggiungere un utente ai sudoers group, esegui il comando seguente (come root o un account che dispone già dei privilegi sudo):

usermod -aG sudo [user_name]

Ad esempio, per aggiungere l'account phoenixnap , dovresti digitare:

sudo usermod -aG sudo phoenixnap

Per visualizzare un elenco di account che appartengono al gruppo sudoers, esegui:

sudo getent group sudo

L'output dovrebbe visualizzare l'account aggiunto nel passaggio precedente:

Come funzionano sudo e su su diverse distribuzioni Linux

su è un comando più vecchio ma più completo incluso in tutte le distribuzioni Linux. È il modo tradizionale per passare all'account root.

Linux sconsiglia di lavorare come root in quanto potrebbe causare modifiche indesiderate a livello di sistema e suggerisce di utilizzare sudo invece. Per questo motivo, tutti basati su Ubuntu le versioni sono solo sudo , il che significa che l'account root non è attivo per impostazione predefinita.

Durante l'installazione di un sistema operativo Ubuntu, crei un utente automaticamente etichettato come parte del gruppo sudoers. Tuttavia, non è presente alcuna configurazione dell'account di root. Per abilitare l'utente root, devi attivarlo manualmente.

D'altra parte, altre distribuzioni Linux, come Fedora, creano un account utente e root al momento dell'installazione.

Abilitazione dell'account root

Se stai utilizzando una distribuzione basata su Ubuntu e provi a passare all'utente root, l'output ti informa che si è verificato un Autenticazione fallita .


Per attivare l'utente root, esegui il comando passwd:

sudo passwd root

Successivamente, l'output chiede di impostare la password per l'utente root. Digita e ridigita una password sicura, quindi premi Invio. Il sistema dovrebbe avvisarti che la password è stata aggiornata correttamente.

Verifica che l'utente root sia attivo passando alla sua shell di accesso con su - .

Funzionalità aggiuntive

Sebbene sudo è principalmente legato all'esecuzione di comandi con privilegi di root, può essere utilizzato anche per cambiare l'utente root. Passa all'utente root e acquisisci l'ambiente root con:

sudo -i

Digitare la password per l'utente attualmente in uso. Ora dovresti essere nella shell di root.

Allo stesso modo, su può anche funzionare come sudo ed esegui un singolo comando come root:

su -c [command]

Ubuntu
  1. La differenza tra [[ $a ==Z* ]] e [ $a ==Z* ]?

  2. Qual è la differenza tra Sudo Su – e Sudo Su –?

  3. La differenza tra account utente e account di servizio?

  4. Centos – La differenza tra spegnimento alle 18:00 e spegnimento alle 18:00?

  5. La differenza tra Lubuntu e Lxde?

Comprendere la differenza tra il comando sudo e su su Linux

Qual è la differenza tra Rsync e BTRFS in Linux?

Qual è la differenza tra Cat e Touch Command

Differenza tra apt e apt-get spiegato

Spiegato! La differenza tra i comandi grep, egrep e fgrep

Differenza tra apt e apt-get spiegato