[Çözüldü] Python ile root haklarının almak veya kontrol etmek

Başlatan uçbirim2002, 04 Mart 2016 - 21:51:21

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

uçbirim2002

Herhangi bir Python betiği çalışırken konsoldan veya GUI olarak (tercihen GUI) root haklarının nasıl alabilirim? Veya betiğin root hakları ile çalıştırılıp çalıştırılmadığının nasıl anlayabilirim?

Son bir soru:
    Sorduğum bu iki soruyu Python veya bash'da yapmak mümkünmüdür? Mesela Synaptic paket yötecisini açarken benden 'GUI' arayüzü ile şifre istiyor. Peki bunu nasıl yapıyor?

Şimdiden teşekkürler.
Hello!

sayz

Alıntı Yap
Herhangi bir Python betiği çalışırken konsoldan veya GUI olarak (tercihen GUI) root haklarının nasıl alabilirim? Veya betiğin root hakları ile çalıştırılıp çalıştırılmadığının nasıl anlayabilirim?

gui ile root hakları için incelemen gereken şey: "gksu".

root hakları denetimi için de os modülünün içinde geteuid() adlı bir fonksiyon var. kullanıcının uid bilgisini kontrol etmelisin root hakları ile çalışıyorsa uid 0 olacaktır bunu kontrol et.

Alıntı YapSon bir soru:
    Sorduğum bu iki soruyu Python veya bash'da yapmak mümkünmüdür? Mesela Synaptic paket yötecisini açarken benden 'GUI' arayüzü ile şifre istiyor. Peki bunu nasıl yapıyor?

her ikisi de python'da da bash'te de yapılabilir. zaten bash'te yapabildiğin şeylerin %90'ını python ile yapabilirsin.

bak dikkat ettiysen sana direk kodları vermiyorum. birazcık uğraşmalısın bunların üzerine. sorduğun soruları görüyorum birkaç defadır. naçizane tavsiyem bu tarz soruların cevabını google'da bulmayı öğrenmelisin. şu sorduğunun sorunun cevabını doğru kelimelerle google'da ararsan sadece 3-4 sn içinde bulabilirsin. hem boşu boşuna beklememiş olursun hem de bu sana daha çok şey katacak inan bana.

çok temel bir ingilizce ile google'a yazman yeterli olur bunun için:

örneğin şu şekilde

daha ilk sonuçta aradığın şeyin cevabı var.

uçbirim2002

Öncelikle cevabınızı ve tavisyeniz için teşekkürler :)

gksu ayrı bir kütüphane/uygulama olduğu için + şifre girme ekranı da farklı olduğundan pek sıcak bakmadım. Ben Synaptic paket yöneticisindeki gibi bir gui ekranı kullanabilirmiyim?
Hello!

sayz


uçbirim2002

#4
Teşekkürler :)
Hello!

sayz


tlg

@uçbirim2002 sorununuz çözüldü mü? Çözüldüyse @sayz dediği yöntemle mi çözüldü veya başka bir yöntem mi buldunuz? Çözüldü etiketi koymuşsunuz ama çözüm yolu ortada kalmış sanki.

uçbirim2002

pkexec komutu herhangi bir uygulamayı root hakları ile çalıştırıyor. GUI ile şifre giriliyor. Python ile ilgili @sayz hocamızın bahsettiği os modülünün getuid() fonksiyonunu kullandım. Eğer uygulama normal başlamış ise değeri 1000, root olarak başlamış ise 0 oluyor.
Hello!

tlg

Teşekkürler @uçbirim2002, başka bir şey kalmadığına göre konuyu kilitliyorum.