Sudo ve su'ya dair bir bilgilendirmeyi yazıyorum, eğer zaten bu konuya hakimseniz atlayabilirsiniz;
Tarbetu yazdı:
06 Ağu 2018, 20:41
Sudo grubu, herhangi bir komutu kendi şifrenizle yönetici olarak çalıştırabilmenize izin veren bir çeşit komuttur. Anlamanız için şu örneği verelim:

Kod: Tümünü seç

sudo zypper in patatesprogramı
Bu komutun başındaki sudo parametresine muhtemelen aşinasınızdır. "Sudo" parametresi, bir komutu yönetici izinleriyle beraber çalıştırabilmenize yardımcı olur. Eğer ne demek istediğimi anlayamıyorsanız, başındaki sudo parametresini silip kodu çalıştırmayı deneyiniz. Muhtemelen sistem "Yassah gardaşım" tadında bir hata verecektir.

İlla ki sudo kullanmak zorunda mıyız? Hayır, konsol üzerinde hızlıca root kullanıcı olarak komutunuzu girebilirsiniz. Bu da su komutuyla olabilir.

Kod: Tümünü seç

su 
zupper in kebapprogramı
Sisteminiz size hiçbir zorluk çıkarmayacak, paşa paşa komutunuzu çalıştıracaktır. su komutunu dileyen kimseler şöyle de evirip çevirebilir:

Kod: Tümünü seç

su -c "zypper in ramazanpaketi"
Su parametresi, bu komutu "Önce root kullanıcı ol, sonra bu komutu çalıştırdıktan sonra normal kullanıcıya geri dön." şeklinde algılayacaktır.
Kaynak: viewtopic.php?f=58&t=72&p=151#p151

Şu resme dikkatlice bakın:

Resim

Bu komut, bir systemd servisinin (Bluetooth servisi) yeniden çalıştırılmasını sağlıyor. Bu komutu eğer konsolda girseydim, başına kdesu yerine su -c "komut" yazardım. Tabii bu komutu konsolda da kullanabiliriz, hiçbir sakıncası yok:

Resim

Komutu verdikten sonra şöyle bir pencere ile karşılaşacaksınız:

Resim

Bu pencerede sizden yönetici (root) yetkilerine erişebilmeniz için yönetici şifresini girmeniz isteniyor. Üç seçeneğiniz var:
  • Şifreyi girip tamama tıklamak
  • Şifreyi girmek yerine yoksay diyerek yöneticisi izni isteyen uygulamayı kendi hesabınızda çalıştırmak
  • İptal'e tıklayarak hiçbir şey olmamış gibi devam etmek
Şifreyi girip tamama tıklarsanız istediğiniz uygulama istediğiniz gibi yönetici yetkileriyle çalışacaktır. Eğer yoksaya tıklarsanız, uygulama açılacaktır; ancak bu sefer arzu ettiğiniz uygulama yönetici hesabından değil normal hesaptan çalışacaktır. Bunu şöyle örneklendirelim:

Dolphin, konsoldan sudo ve su komutlarıyla çağrılamayan bir uygulama. Buyrun;

Resim

Gördüğünüz üzere Dolphin adeta "Ne rahatsız ediyorsun be?" diyerek ters ters cevaplar verdi. Bu yüzden, konsoldan da olsa alt + f2 menüsünden de olsa Dolphin'i kdesu veya kdesudo kullanırsak daha kibar cevaplar alırız.

Resim

Konumuza geri dönelim, kdesu ile Dolphin'i çağırdık ve kdesu bize üç seçenek sundu. Yönetici parolasını girip uygulamayı çalıştırırsak Dolphin şöyle açılacaktır:

Resim

Gördüğünüz üzere, Dolphin varsayılan sistem temasıyla beraber bize /root klasörünü açtı. Şu an hiçbir kısıtlamaya maruz kalmadan istediğimizi yapabiliriz. Mesela /root klasörü altında bir klasör oluşturuyorum:

Resim
Resim

Gördüğünüz üzere, Dolphin paşa paşa istediğimizi yaptı. Bir de yoksay'a tıklayıp deneyelim:

Resim
Resim

Bu sefer dolphin, benim kendi temamla beraber benim ev dizinimi açtı. Hadi /root dizinine erişmeye çalışalım:

Resim

Gördüğünüz üzere, Dolphin "Senlik değil buralar, yuvana geri dön" diyerek bizi tersledi. Yani özetle, Dolphin'i ben normal menümden çağırsaydım Dolphin yine aynı şekilde açılırdı.

Bunun dışında kdesu ve kdesudoya aslında sistem menüsünden yönetici yetkisi isteyen bir uygulamaya erişirken de ulaşabiliyoruz. Mesela sistem menüsünden YaST'ı çağıralım.

Resim
Resim

Bu arkadaşı sanki gözüm bir yerden ısırdı...

Peki böyle bir uygulamayı çağırırken sistemin kdesu yerine kdesudo kullanmasını sağlayabilir miyiz?

Tabii ki de.

Öncelikle, kdesudo'yu indiriniz.

https://software.opensuse.org/package/k ... rm=kdesudo (Topluluk paketi)

Açılan sayfadan yayınınıza uygun bir şekilde şöyle indirebilirsiniz:

Resim

Nasıl kurulacağını bilmiyorsanız eğer, şu konudaki Yol 2'yi inceleyebilirsiniz:

viewtopic.php?f=5&t=40

Sonrasında, konsolunuzu açın ve yönetici olarak şu komutu verin:

Kod: Tümünü seç

mv /usr/bin/kdesu /usr/bin/kdesuyedek
Burada kdesu uygulamasına işaret eden kısayolu yeniden adlandırarak sistemin görmesini engelliyoruz. (Silmek yerine yedek almış oluyoruz)

Kod: Tümünü seç

ln -sf /usr/bin/kdesudo /usr/bin/kdesu
Burada da yeni boş kalan kdesu kısayolunu kdesudo uygulamasına işaret edecek şekilde yeniden düzenliyoruz.

Eğer tekrar kdesu kullanmak isterseniz de şöyle yapmalısınız:

Kod: Tümünü seç

rm -rf /usr/bin/kdesu
Oluşturduğumuz kdesudoya bağlantı veren kdesu kısayolunu siliyoruz.

Kod: Tümünü seç

mv /usr/bin/kdesuyedek /usr/bin/kdesu 


Yeniden adlandırdığımız kdesu kısayoluna eski adını geri veriyoruz.