En büyük fark, sudo
sizin gibi bir komutu root olarak çalıştırmak için root parolasına ihtiyacınız olmamasıdır su
. Birisini eklemek için kök şifreniz olması gerekir.sudoers
dosyaya ancak daha sonra bu kişi daha fazla şifre gerektirmeksizin hepsini veya bir kısmını (kısıtladıysanız) root olarak çalıştırabilir.
Diğer fark, belirttiğiniz gibi sudo
tam olarak hangi komutların çalıştırılabileceği üzerinde daha hassas bir kontrole izin veriyor.
sudoers
Dosyanın formatının detayları için çalıştırın man sudoers
. Orada sadece belirli komutların root olarak çalıştırılmasına izin veren örnekler bulacaksınız. Her çizginin temel yapısı:
user_list host_list = cmd_list
cmd_list, gerçek kullanıcının geçiş yapmasına izin verilen kullanıcının detaylarını içerebilir. Örneğin, bir web yöneticisinin apache'yi yeniden başlatmak, ancak root'a değil wwwroot'a geçmesine izin verebilirsiniz. Ayrıca, değiştirmeden önce kullanıcı parolasının gerekip gerekmediği gibi başka seçenekler de içerebilir (bu varsayılandır).
Örnek bir satır olabilir:
joe ALL=(ALL) ALL
bunun anlamı: joe'un herhangi bir ana bilgisayardaki herhangi bir komutu herhangi bir kullanıcı olarak çalıştırmasına izin verin. Daha sıkı bir çizgi olabilir:
joe ALL=(operator) /usr/local/ops/
Bunun anlamı şudur: joe / usr / local / ops dizinindeki herhangi bir komutu "operatör" kullanıcısı olarak çalıştırsın
Sudoers man sayfasının sonunda pek çok örnek var.
Düzenleyebilir gerektiğini /etc/sudoers
komutla visudo
. Bu, dosyanın yasal olduğunu kontrol eder ve yanlışlıkla kırmanızı önler.
sudo
müthiş bir buluş