Quale approccio è migliore?
Per l'utilizzo desktop, sembra che sudo sia migliore poiché:
- Posso avere una cronologia più coerente come utente normale
- Non è necessario ricordare due password, il che è particolarmente vero quando non faccio regolarmente cose amministrative.
- Non è necessario creare un account root aggiuntivo al momento dell'installazione.
Ma nella gestione del server?
Nel server di solito hai già creato un account di root e probabilmente fai cose amministrative spesso. Quindi i vantaggi di sudo sembrano non valere più.
Inoltre, è facile configurare su nella riga di comando nella maggior parte delle distribuzioni, basta aggiungere l'utente al gruppo di ruote. (Puoi anche passare -G wheelquando useradding.) Pertanto la configurazione di su può essere facilmente automatizzata in script di shell.
Ma per sudo? Devi prima aggiungere l'utente, quindi eseguire in modo visudointerattivo. Ciò è negativo poiché non è possibile automatizzarlo in script di shell.
(Beh, puoi. Ad esempio,
echo '%wheel ALL=(ALL) ALL' >> /tmp/sudoers.tmp
cp /etc/sudoers /etc/sudoers.old
visudo -c -f /tmp/sudoers.tmp && mv /tmp/sudoers.tmp /etc/sudoers
Ma almeno non è così facile.)
Allora, quali sono le tue opinioni? Per un ambiente server, quale preferirete, sudo o su root?
visudo -ccomando, poiché credo che tu debba visudo -c -fcontrollare un file specifico.