Perché devo `sudo`?


12

Ho seguito un paio di tutorial sul mio RPi e molti comandi iniziano con sudo; cosa significa e cosa fa?



7
Questa è un'ottima domanda, posso immaginare molti principianti che desiderano informazioni al riguardo.
berry120

@ berry120 sì, ma sarebbe stato più adatto a Unix / Linux SE perché le persone eseguono i loro Pi anche su altri sistemi operativi (ti sto guardando, RISC OS!)
evamvid

Whaaaat? Domanda di un anno! fare che 2 anni!
evamvid,

@evamvid Questa è stata una delle prime domande di esempio su RPi.SE ...
Alex Chamberlain,

Risposte:


21

sudosta per Super User Do; ti permette di essere eseguito come un altro utente, di solito il superutente ( root), per eseguire attività amministrative, come aggiornare il software, cambiare i filesystem e avviare i demoni.

rootha il massimo potere e può eseguire praticamente qualsiasi cosa. Pertanto, può causare molti danni al sistema e, nel peggiore dei casi, dovrai ricominciare.

Devi sempre capire cosa sta facendo un comando prima di eseguirlo.

Perché abbiamo sudo?

Per motivi di sicurezza, gli utenti normali non possono fare tutto. Ti impedisce di fare qualcosa di troppo brutto per caso e impedisce agli utenti malintenzionati di danneggiare il sistema.

Perché non eseguiamo l'accesso come rootquando desideriamo autorizzazioni elevate?

sudoconsente agli amministratori di controllare quali comandi possono essere eseguiti da ciascun utente root. Ad esempio, l'amministratore può consentire l'esecuzione apt-getcome root, ma nient'altro. Inoltre, tutti i comandi eseguiti tramite sudovengono registrati /var/log/auth.log.

Altre distribuzioni

L'immagine predefinita di Debian è stata sudoinstallata in anticipo, ma altre potrebbero non esserlo. È spesso possibile installarlo utilizzando il gestore pacchetti delle distribuzioni o esaminare altri modi per ottenere i permessi di root.

Arco

È possibile installare sudoutilizzando pacman: esegui pacman -S sudocome root. È quindi necessario aggiungere un nuovo utente e disabilitare l' rootaccount.

su

In Arch Linux (e altre distribuzioni che lo supportano), è possibile utilizzare il sucomando (utente sostitutivo) per assumere l'identità di qualsiasi altro utente (incluso root). Ciò significa che tutti i tuoi comandi futuri (nella sessione corrente) avranno i loro permessi. Tuttavia, avrai bisogno della loro password e i comandi che esegui non saranno necessariamente registrati.

Guarda anche:


1
Pensi che le informazioni su supotrebbero essere utili per completare davvero la risposta?
Alex L

Proporre una modifica sotto l'intestazione Altre distribuzioni?
Alex Chamberlain,

Inoltre, tendo a scrivere "sudo bash" non appena carico il mio pi per evitare di dover scrivere sudo tutto il tempo. Ciò ti consente di eseguire tutto con privilegi di superutente. Questo è ovviamente un po 'pericoloso, ma con l'RPI c'è poco di grave che puoi fare.
asfalto

1
Questa è una brutta abitudine da prendere!
Alex Chamberlain,

1
@phalt Perché non accedi come root allora?
Jivings,

2

Di solito lo usi per eseguire un determinato comando come root, anziché come utente corrente. Per motivi di sicurezza, la norma nel mondo Linux prevede che l'utente principale disponga di privilegi limitati e che passi a root ogni volta che devi fare qualcosa per cui non hai privilegi (come l'installazione di pacchetti).

Root è un po 'come l'amministratore nel mondo di Windows: è il tuo ultimo utente "non puoi fare nulla".

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.