sudo
- Okunuşu
- sudu
Kısaca
sudo, izin verilen bir kullanıcının kendi parolasıyla tek bir komutu root ya da başka bir kullanıcının yetkileriyle çalıştırmasını sağlar ve bunu kaydeder.
sudo nedir?
Linux, macOS ve diğer Unix benzeri sistemlerde root kullanıcısı her şeyi yapabilir; bu yüzden sürekli root olarak çalışmak risklidir: yanlış yazılmış tek bir komut bütün sisteme zarar verebilir. sudo ile sıradan bir kullanıcı olarak çalışır, yetkilerinizi yalnızca gerektiren komutlar için, başlarına sudo koyarak yükseltirsiniz: sudo apt update gibi. sudo root'un değil, sizin parolanızı sorar ve ardından o tek komutu root olarak çalıştırır.
sudo'yu kimin ve hangi komutlar için kullanabileceği sudoers dosyasında, /etc/sudoers içinde belirlenir. Pek çok dağıtımda sudo ya da wheel gibi bir grubun üyeleri her şeyi çalıştırabilir, ama kurallar dar da olabilir; örneğin bir deploy kullanıcısının yalnızca tek bir servisi yeniden başlatmasına izin vermek gibi. Dosya, kaydetmeden önce sözdizimini denetleyen visudo ile düzenlenir, çünkü bozuk bir sudoers dosyası herkesi yönetim işlerinin dışında bırakabilir. Her kullanım kaydedilir; böylece yöneticiler kimin neyi çalıştırdığını görebilir.
Adı genellikle superuser do olarak okunur; -u ile bir komutu herhangi bir kullanıcı olarak çalıştırır: sudo -u postgres psql gibi. Parolanızı yazdıktan sonra sudo onu birkaç dakika, varsayılan olarak 5 dakika, hatırlar; böylece art arda gelen komutlar tekrar tekrar sormaz. sudo ilk kez 1980 civarında SUNY Buffalo'da yazıldı; bugün Ubuntu ve macOS gibi sistemlerin root hesabını kilitli tutabilmesinin nedeni de odur: yöneticiler onun yerine sudo ile çalışır.
Önemli noktalar
- sudo, tek bir komutu root'un ya da başka bir kullanıcının yetkileriyle çalıştırır.
- Sizin kendi parolanızı sorar ve her kullanımı kaydeder.
visudoile düzenlenen sudoers dosyası kimin neyi çalıştırabileceğini söyler.- Sıradan bir kullanıcı olarak çalışıp sudo'yu yalnızca gerektiğinde kullanmak hataların zararını sınırlar.
Örnek
apt update # as an ordinary user: fails with "Permission denied"
sudo apt update # asks for your password, then runs as root
sudo -u postgres psql # run a command as another user
sudo -l # list what you are allowed to run
sudo visudo # edit /etc/sudoers, with a syntax check before savingSık sorulan sorular
sudo ile su arasındaki fark nedir?
su başka bir hesaba, genellikle root'a geçer ve o hesabın parolasını ister; çıkana kadar root olarak kalırsınız. sudo ise tek bir komutu yükseltilmiş yetkilerle çalıştırır ve sizin kendi parolanızı ister; böylece root'un parolasının kimseyle paylaşılması gerekmez ve her komut kaydedilir.
sudo neden sudoers dosyasında olmadığımı söylüyor?
Hesabınıza o makinede sudo yetkisi verilmemiş. Bir yönetici sizi Ubuntu'daki sudo ya da Fedora'daki wheel gibi yönetici grubuna ekleyebilir ya da sudoers dosyasına sizin için bir kural yazabilir.
İlgili sayfalar
- LinuxDevOps ve Bulut, s. 31Linux, çoğu sunucuyu, bulutu, konteyneri ve Android telefonu çalıştıran, genellikle dağıtım olarak paketlenen açık kaynaklı bir işletim sistemi çekirdeğidir.
- Unixİşletim Sistemleri, s. 35Unix, 1969'da Bell Labs'ta doğan ve küçük araçlar, dosyalar ve bir kabuktan oluşan tasarımı Linux ve macOS'ta yaşamaya devam eden bir işletim sistemi ailesidir.
- Dosya İzinleriİşletim Sistemleri, s. 9Dosya izinleri, bir dosyayı kimin okuyup değiştirebileceğini ya da çalıştırabileceğini belirleyen ve işletim sisteminin her erişimde uyguladığı kurallardır.
- Shellİşletim Sistemleri, s. 28Shell, kullanıcının yazdığı ya da bir betikte yazılı komutları okuyup işletim sisteminden çalıştırmasını isteyen, genellikle metin arayüzlü bir programdır.
- Terminalİşletim Sistemleri, s. 33Terminal, bir metin arayüzü gösteren, tuş vuruşlarınızı bir kabuğa ya da komut satırı programına iletip onun geri gönderdiği metni görüntüleyen programdır.
- En Az Ayrıcalık İlkesiGüvenlik, s. 9En az ayrıcalık ilkesi, her kullanıcıya, programa ve servise yalnızca işini yapması için gereken asgari erişimin verilmesini öngören güvenlik kuralıdır.
- Komut Satırı Arayüzüİşletim Sistemleri, s. 19Komut satırı arayüzü (CLI), bilgisayarı metinle kullanmanın yoludur: seçenekleri ve argümanlarıyla bir komut yazar, Enter'a basar ve çıktısını okursunuz.
Kaynaklar
Bu sayfada bir hata ya da eksik mi gördünüz?Düzeltme önerin