X11 ошибки по SSH
Я получаю следующие ошибки при попытке открыть программы через SSH.
$ thunar
Thunar: Cannot open display:
$ libreoffice
Failed to open display
$ firefox
Error: GDK_BACKEND does not match available displays
$ keepassx
keepassx: cannot connect to X server
$ keepass2
Unhandled Exception:
System.TypeInitializationException: The type initializer for 'System.Windows.Forms.XplatUI' threw an exception. ---> System.ArgumentNullException: Could not open display (X-Server required. Check your DISPLAY environment variable)
Parameter name: Display
at System.Windows.Forms.XplatUIX11.SetDisplay (IntPtr display_handle) <0x41b3c8a0 + 0x00b9b> in <filename unknown>:0
at System.Windows.Forms.XplatUIX11..ctor () <0x41b3ab20 + 0x001df> in <filename unknown>:0
at System.Windows.Forms.XplatUIX11.GetInstance () <0x41b3a8d0 + 0x0005b> in <filename unknown>:0
at System.Windows.Forms.XplatUI..cctor () <0x41b3a160 + 0x00137> in <filename unknown>:0
--- End of inner exception stack trace ---
at System.Windows.Forms.Application.EnableVisualStyles () <0x41b38870 + 0x0001b> in <filename unknown>:0
at KeePass.Program.Main (System.String[] args) <0x41b376c0 + 0x0008b> in <filename unknown>:0
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: The type initializer for 'System.Windows.Forms.XplatUI' threw an exception. ---> System.ArgumentNullException: Could not open display (X-Server required. Check your DISPLAY environment variable)
Parameter name: Display
at System.Windows.Forms.XplatUIX11.SetDisplay (IntPtr display_handle) <0x41b3c8a0 + 0x00b9b> in <filename unknown>:0
at System.Windows.Forms.XplatUIX11..ctor () <0x41b3ab20 + 0x001df> in <filename unknown>:0
at System.Windows.Forms.XplatUIX11.GetInstance () <0x41b3a8d0 + 0x0005b> in <filename unknown>:0
at System.Windows.Forms.XplatUI..cctor () <0x41b3a160 + 0x00137> in <filename unknown>:0
--- End of inner exception stack trace ---
at System.Windows.Forms.Application.EnableVisualStyles () <0x41b38870 + 0x0001b> in <filename unknown>:0
at KeePass.Program.Main (System.String[] args) <0x41b376c0 + 0x0008b> in <filename unknown>:0
:06:22 PM~/Documents$ gimp
Cannot open display:
$ wireshark
QXcbConnection: Could not connect to display
Aborted (core dumped)
$ gedit
Failed to connect to Mir: Failed to connect to server socket: No such file or directory
Unable to init server: Could not connect: Connection refused
(gedit:23724): Gtk-WARNING **: cannot open display:
Я всегда был в состоянии открыть приложения по SSH, это только началось вчера. используя Ubuntu 16.04 на обеих машинах.
пожалуйста, НЕ отмечайте это как повторный вопрос, следующие решения не помогли:
gksu: Gtk-WARNING **: не могу открыть дисплей:: 0
Gtk-WARNING **: невозможно открыть дисплей: на сервере Ubuntu
(nautilus:13581): Gtk-WARNING **: невозможно открыть дисплей:
Если нужна конкретная информация, пожалуйста, спросите, я сделаю все возможное, чтобы ответить.
2 ответа
Вам необходимо рассказать нам 3 вещи.
- Какую команду вы использовали для запуска сеанса SSH.
Ты бежал
$ ssh -Y whatever.com
или же
$ ssh -X whatever.com
Если у вас нет ни -X, ни -Y, пересылка X11 не будет работать
- Вы редактировали файл конфигурации клиента ssh на клиентском компьютере? Если вы изменили это, скажите нам, что именно.
Если вы не хотите вводить -X каждый раз, когда вам нужна пересылка X11, это можно установить по умолчанию, отредактировав /etc/ssh/ssh_config. Это не конфигурация сервера машины, это по умолчанию для всех клиентов. Внизу у меня есть
ForwardAgent yes
ForwardX11 yes
ForwardX11Trusted yes
Я ожидаю, что эти изменения не будут иметь никакого эффекта, пока вы не выйдете из системы, но я могу ошибаться по этому поводу.
- На сервере вы включили пересылку X11?
На сервере в файле /etc/X11/sshd_config необходимо будет включить пересылку X11 с помощью строки, подобной
X11Forwarding yes
Обратите внимание, что изменения не будут действовать до тех пор, пока сервер не будет перезапущен или, по крайней мере, его ssh-сервер не будет перезапущен.
Дайте нам знать, как это работает. Если это не удается, сообщите файлы конфигурации и то, что вы запустили.
Вы отключили ipv6? Если так, то я нашел решение! Добавьте AddressFamily inet в sshd_config.
Редактировать:
Выполните следующие шаги:
- На сервере отредактируйте файл / etc / ssh / sshd_config.
- Файл по умолчанию должен иметь закомментированный адрес AddressFamily inet. Раскомментируйте его и измените значение по умолчанию "any" на "inet".
- Затем перезапустите службу: sudo service sshd restart.