Sudo ile uygulama çalıştırılırken X Sunucusuna bağlanılamıyor


29

Bazı yazılımları sudokomut kullanarak çalıştırdığımda, bunun gibi bir hatayı gösteriyor

cannot connect to X server

Örneğin, aşağıdaki komutu çalıştırırsam:

$ sudo gedit /etc/profile

Ben aşağıdaki komutu alıyorum

(gedit:6758): WARNING **: Command line `dbus-launch --autolaunch=84b871d735f31ffe014dc9ba00000009 --binary-syntax --close-stderr' 
exited with non-zero exit status 1: 
Autolaunch error: X11 initialization failed. 
Cannot open display:
Run 'gedit --help' to see a full list of available command line options.

Ya da koşuyorsam super-boot-managerhatayı alıyorum

buc: cannot connect to X server

Lütfen yardım et.


Nereden kaçıyorsun super-boot-manger?
Thor

İlk önce super-boot-managerdoğrudan birlik rampasından koşmaya çalıştım , işe yaramadı. Sonra terminalden denedim, sonra o hata masajını yaptım.
Apurba

Grafiksel kullanıcı ortamındaki bir terminalde olduğu gibi? Ne yapar: echo $DISPLAYsay? Sen olmadan çalışması gerekir sudoolarak super-boot-managerçalışır sudoiçten.
Thor

echo $DISPLAYveriyor :0.0. Ve yayınlanmıyor super-boot-managerolarak sudo. Sadece super-boot-managerterminalden komut kullanarak çalışıyorum .
Apurba

1
Sonunda problem çözüldü. Satırı yeni ekledim: Defaults env_keep="DISPLAY XAUTHORITY"sonunda visudo. Herkese teşekkürler, nazik yardım için @Thor.
Apurba

Yanıtlar:


39

Kök kullanıcının X sunucusuna erişmesine izin vermeniz gerekir:

xhost local:root

Ve komutu sağa yönlendirin DISPLAY:

sudo DISPLAY=$DISPLAY gedit /etc/profile

Yani açılış ile sorun çözüldü geditolarak sudo, ama yine de öğle değil super-boot-manager. Aynı hatayı gösteriyor
Apurba

15

Sonunda problem çözüldü. Satırı yeni ekledim:

Varsayılan değerler env_keep = "DISPLAY XAUTHORITY"

sonunda visudo.

Bunu yapmak için kaçmalısın.

sudo visudo

dosyayı açıp sonuna yukarıdaki satırı ekleyecektir.

Herkese teşekkürler, nazik yardım için @Thor


1
Defaults env_keep = "DISPLAY" benim için çalışıyor.
bagustris

Sonsuza kadar bu cevap için yüksek ve düşük arıyordum. Keşke cevaplarınız için ikinizi birden fazla kez oylayabilseydim. Çok teşekkür ederim! :)
Ev-

4

Takviye @ Thor'un cevabı:

Daha xhost local:rootönce koş sudo gedit. Bunu kalıcı yapmak için satır ekleyin

xhost local:root

~ / .xinitrc 1 dosyasına . Varsa, dosyayı oluşturun.


[1] https://askubuntu.com/a/720120/452398


Kalıcı olmayan bir çözüm sunan bir cevap verdiğiniz için teşekkür ederiz.
2NinerRomeo
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.