Linux'ta Sudo Nedir ve Nasıl Kullanılır?


Mükemmel XKCD web çizgi romanından yukarıdaki çizgi romanı düşünün. Sandalyedeki tembel adam, arkadaşının kendilerine bir sandviç yapmasını istiyor ama bunu onlara yaptıracak yetkileri yok. Yani, güçlü sudo komutunu çağırana kadar. Bundan sonra, bir şekilde bir sandviç yapılacaktır.

Sudo'yu gerçek hayatta bir kişi üzerinde denemek muhtemelen o kadar etkili olmayacak olsa da, Linux dünyasındaki her engeli aşan sihirli komuttur. sudo nedir? Neden var? Cevap, Linux'un izinleri nasıl ele aldığında yatmaktadır.

Linux Kullanıcı İzinlerini Anlamak

Linux, izinleri nasıl işlediğinden dolayı güvenli bir işletim sistemi olarak kabul edilir. macOS (Linux ile bir atayı paylaşan) ve Windows gibi işletim sistemleri artık bu açıdan Linux'a daha çok benzese de, Açık Kaynak işletim sistemi hala biraz benzersizdir.

Linux'un izinleri nasıl ele aldığını anlamak, onu sudo komutunun etrafından dolaşmak çok daha kolay. Tüm modern işletim sistemlerinin bir "yönetici" veya "kök" kullanıcı izinleri düzeyi vardır. Bir yönetici veya kök hesabınız varsa, herhangi bir ayarı değiştirebilir, herhangi bir veriyi silebilir ve genellikle bilgisayarla istediğinizi yapabilirsiniz.

Bu, veri kaybına veya tam bir silme ve yeniden yükleme ihtiyacına yol açabilecek muhtemelen yapmamanız gereken şeyleri içerir.

Linux bunu yapmaz. kök kullanıcı düzeyindeki izinleri varsayılan yap. Bunun yerine hesabınız, izin seviyenizi yükseltmeden sistemin gerçekten hassas kısımlarına giremez. Bu, grafiksel bir arayüz kullanarak olağan dışı bir şey yapmak istediğinizde sistemin yönetici şifresini girmenizi isteyeceği anlamına gelir.

Ancak, işleri halletmek için terminal komut satırını kullanmak istediğinizde, sudo en güvenlisidir ve bunu yapmanın en etkili yolu.

Sudo ve Terminal

Linux'ta kendinize yüksek izinler vermenin iki yolu vardır. Biri, kalıcı olarak kök kullanıcı olarak oturum açmaktır. Bununla ilgili sorun, bilgisayara erişebilen herhangi birinin hasara yol açabilmesi ve sizin bile bunu kazara yapabilmenizdir. Sudo, onu izleyen belirli komutları yürütmek için izinlerinizi yalnızca kısa bir süreliğine yükseltir.

Sudo Sözdizimi

Sudo'nun sözdizimi (komut biçimi) basittir. Basitçe "sudo" ve ardından yürütmek istediğiniz komutu yazın.

Örneğin, "sudo apt-get update", ilgili listede listelenen tüm uygulama havuzlarını güncelleyecektir. dosya. Sudo olmadan çalıştırmayı denerseniz, izniniz olmadığını söyleyen bir hata mesajı alırsınız. Bu arada, bu genellikle favori Linux dağıtımınızın yeni bir kurulumundan sonra çalıştırmak isteyeceğiniz ilk sudo komutudur.

Sudo'daki "Su"

Sudo'daki "su", "superuser" kelimesinin kısaltmasıdır ve bağımsız bir komuttur. "su" komutu, sudo'nun sizi hangi kullanıcının ayrıcalıklarına yükselteceğini değiştirmenizi sağlar.

Sudo sizi geçici olarak root'a yükseltse de, su sizi uygun ayrıcalıklara sahip başka bir kullanıcıya değiştirir. Bu önemsiz bir ayrım gibi görünebilir, ancak sudo'nun bir kullanıcıyı yükselttiği hesabı değiştirmek için iyi nedenler vardır.

Her şeyden önce, hesabı değiştirmek, normal kullanıcıların kök şifreyi bilmediği anlamına gelir. İkinci olarak, tüm sudo komutlarının bir günlüğü vardır; bu, sistem yöneticisinin (kök) su komutlarını kimin yayınladığını arayabileceği anlamına gelir.

su için sözdizimi temelde sudo ile aynıdır:

Su USERNAME -c COMMAND

Komutu çalıştırmak için USERNAME'i istediğiniz kullanıcıyla ve COMMAND'ı yürütmek istediğiniz Linux komutuyla değiştirin.

Eğer başka bir kullanıcı olarak birden çok komut çalıştırmak istiyorsanız, şunu kullanın:

Su USER

USER'ı istediğiniz kullanıcı hesabı kimliğiyle değiştirin.

Su'yu tek başına kullanırsanız, siz “exit” komutunu kullanana kadar Linux diğer kullanıcı hesabına geçecektir. Bunu veya o oturumda terminale erişecek bir sonraki kullanıcının hala yüksek izinlere sahip olacağını hatırlamak önemlidir. Bu nedenle genellikle su yerine sudo kullanmak daha iyidir.

Sudo Zaman Sınırı

Bir sudo komutunu ilk kez kullandığınızda, bir şifre girmeniz gerekecek. Ardından, bu şifre 15 dakika boyunca geçerli kalacaktır. sudo visudokomutunu çalıştırarak ve "timestamp_timeout=" değerini daha uzun veya daha kısa bir değerle değiştirerek bu varsayılanı değiştirebilirsiniz. Ancak, bir sudo parolasının geçerliliğini uzatmak veya kısaltmak için iyi bir nedeniniz yoksa bunu yapmanızı önermiyoruz.

Sudo Seçenek Anahtarları

Sudo sözdizimi basit, birkaç anahtar hakkında bilgi sahibi olmaya değer. Bu komutlar ek bilgiler açar veya sudo oturumunu kontrol etmenize yardımcı olur:

  • -hsize sudo için sözdizimi ve komut bilgilerini gösterir.
  • -V, makinenizdeki sudo için geçerli sürümü görüntüler.
  • -v, saati yeniden başlatarak sudo zaman sınırını yeniler.
  • -lkullanıcı ayrıcalıklarını listeler.
  • -kmevcut sudo oturumunu hemen kapatarak yükseltilmiş ayrıcalıkları kaldırır.
  • Sudo'da yerleşik olarak bulunan daha birçok seçenek vardır ve bunların hepsini yukarıda listelenen ilk -h anahtarını kullanarak görebilirsiniz.

    Yukarıdaki ekran görüntüsü, kullandığınızda ortaya çıkan sonuçtur. yardım seçeneği.

    Faydalı Sudo Komutları

    Peki her Linux kullanıcısı sudo tarafından desteklenen hangi komutları bilmeli? Sudo apt-get güncellemesini zaten ele aldık, ancak bunları da not edin:

    • Sudo apt-get upgrade, kurulu tüm paketleri yükseltir.

      • Sudo apt-get upgradeli>
      • Sudo apt-get install seçtiğiniz yazılımı yükler; sadece yüklemek istediğiniz paket adını değiştirin.
      • Paket adını bilmiyorsanız, dpkg –list'i kullanın.
      • Eğer kurulu bir paketi terminalden kaldırmak istiyorsanız, sudo apt-get remove (yine söz konusu paketin adını değiştirerek) kullanın.
      • Bunlar muhtemelen kullanmanız gereken ilk sudo komutlarıdır, ancak yukarıda öğrendiğiniz gibi herhangi bir komut sudo'yu takip edebilir, ancak yalnızca onunla daha yüksek ayrıcalıklara ihtiyaç duyanları kullanmalısınız.

        İlgili Mesajlar:


        30.06.2021