Yanıtlar:
sudo
komut satırında parolayı sorar ve bunun gksudo
için bir iletişim kutusu açılır.
sudo -E
eşittir gksudo
?
gksudo
bir GTK tabanlı bir önyüz sudo
(btw, kdesudo
bir QT tabanlı önyüzü), bununla birlikte (varsayılan) kolları daha çevresel değişkenler ( HOME
, XAUTHORITY
daha vs.) sudo
bu şekilde kök Daha Güvenli olarak çalışan komutları adrestir.
Görebildiğim kadarıyla sadece @Logics cevabı yeterince doğru (@Ignacio Vazquez-Abrams tamamlanmadı). @Davros @knitti answer / comments için lütfen kaçınılması gereken açıklama: (Lütfen gerekmediğinde lütfen kaldırın / düzenleyin):
sudo
edilmekle birlikte, kullanılan UI iki komutun tek farkı DEĞİLDİR. HOME
ortam değişkeninin işaret ettiği yere yazıp yazmadığını) belirleyemediğinizde gk / kdesudo kullanmalısınız . sudo
bazı sistemlerde ve durumlarda komut). Tüm GUI uygulamaları ana dizininize yazmaz ve CLI uygulamalarının tümü yazmaz , bu nedenle komut türü kilit nokta değildir. sudo
root olarak (örnek olarak uygulamalar konsol çıktısını görüntülemek için) fırlatma GUI uygulamalarına komutu, ancak sap gerekir HOME
(ve bu şekilde diğerlerinin XAUTHORITY
, DISPLAY
vb giriş-yöntem ile ilişkili-malzeme,) çevresel değişkenler doğru öylesine başlatılan uygulamanın başarısız olmayacağını, işlevselliğini yitirmeyeceğini veya çok kötü şeyler yapabileceğini. Aşağıdaki kullanmak için benim geçerli tavsiyemsudo
sudo -H <rest of the command>
sudo
bölüm 8 kılavuz sayfasından) -H ( HOME )
Seçenek, güvenlik politikasının, HOME
ortam değişkenini, şifre veritabanında belirtildiği şekilde hedef kullanıcının ana dizinine (varsayılan olarak kök) ayarlamasını ister. Politikaya bağlı olarak, varsayılan davranış bu olabilir.sudo
arayanın giriş dizininde dosya oluşturulmasını engellemelidir.sudo -H DISPLAY=<a working X display name, usually :0> <rest of a GUI program command>
sudo
Komutun davranışı tüm sistemlerde aynı değildir ve visudo
komut aracılığıyla yapılandırılabilir , sudoers(5)
daha fazla bilgi için lütfen manpage'i kontrol edin .Grafik programları çalıştırmak için düzenli sudo kullanmak, nadiren bazı durumlarda karışık izinlere neden olur. Güvenli olmak için gksudo (veya uygunsa kdesudo) bir GUI ile programları çalıştırmak için kullanılmalıdır. Bunun gerçekten bir hata olduğunu düşünüyorum, ancak gksudo'nun X sunucu değişkenlerini anladığını ve sudo'nun muhtemelen sorunlara yol açmadığı açıklamalarını duydum. Sadece bir ipucu olarak; grafik programları root olarak çalıştırıyorsanız, çalıştırmak istediğiniz her program için bir terminal açmak yerine, ALT-F2 (aynı anda alt ve fonksiyon tuşu 2) yazın, sonra açılan "gksudo program "tırnak ve program olmadan çalıştırmak istediğiniz uygulama tarafından değiştirilir.
sudo, ayrıcalıklara sahip mevcut kullanıcı olarak çalışır. Bu, grafik uygulamaları çalıştırırken belirli kullanıcı yapılandırma dosyalarının (grafik ortamınızla ilgili) dosya izinlerini değiştirme potansiyeline sahiptir. Bu uygulamaları sudo olmadan tekrar çalıştırırken ortaya çıkan hataları bulabilirsiniz.
gksudo (KDE altında kdesudo), uygulamaları root kullanıcı olarak çalıştırır, bu nedenle dokunulan tüm dosya izinleri, kullanıcıların dosyaları değil, kök dosyalarındadır. Bu uygulamaları gksudo / kdesudo olmadan tekrar çalıştırmak her zaman beklenen davranışa sahip olacaktır.
Mevcut cevap yanlış. Göre Ubuntu RootSudo wiki :
"Grafik uygulamalarını root olarak başlatmak için asla normal sudo kullanmamalısınız. Bu gibi programları çalıştırmak için gksudo (Kubuntu'da kdesudo) kullanmalısınız. Gksudo sets HOME = ~ root kullanmalısınız. dizin kök tarafından sahip olunan. (AFAICT, gksudo ve sudo ile başlatılan sürecin ortamı hakkında özel olan tek şey bu). "