Risposte:
su
significa utente sostitutivo e se viene chiamato senza argomenti diventerai il superutente. Pertanto devi inserire la password di root.
Questo è un po 'strano se molte persone hanno bisogno di usare comandi per l'amministrazione del sistema o cose simili con diritti utente estesi. Semplicemente non vuoi che le persone abbiano diritti illimitati condividendo la stessa password di root.
La soluzione per questo tipo di problemi è sudo
(" sostituisci utente "). Ciò ti consentirà di specificare i comandi che qualcuno può invocare e definire le autorizzazioni. Perché sudo
non devi inserire la password di root, ma la password dell'utente che tenta di invocare un comando sudo.
Alcune distribuzioni hanno l'utente root disabilitato per motivi di sicurezza. Questa potrebbe essere una spiegazione del motivo per cui non sei in grado di utilizzare su
. In tal caso, per ottenere una shell con privilegi di root usare sudo -s
;-)
$ script
e $ sudo script
? L'utente è lo stesso in entrambi i casi.
sudo allows a permitted user to execute a command as the superuser or another user, as specified in the sudoers file.
- da man sudo. Di solito lo script verrà invocato con i privilegi di root. Questa è la differenza
Il comando su senza opzioni verrà impostato per impostazione predefinita per consentire all'utente di diventare utente root. Non richiede la tua password, ma la password di root.
Il comando sudo chiede sempre la tua password.
sudo su -
se il trattino significhi impostare l'ambiente in base al profilo di accesso dell'utente (in questo caso root). Questo di solito offre un leggero aumento della sicurezza del PERCORSO ma ancora non protegge daecho hi > /dev/my_critical_filesystem