ssh и sudo, но нет $ DISPLAY

Обычно я делаю это на ssh для получения приложения X, используя sudo su

 ssh -X server 

Вход OKI

  • apt-get через ssh-tunnel, если разрешен только порт 22
  • Не удалось сделать бесплатный доступ к удаленному компьютеру!
  • Что такое X11 точно?
  • ssh на сервер, подключенный к службе VPN
  • Как программно контролировать пересылаемые приложения X11?
  • Уведомление об изменениях заголовка окна
  •  xauth list $DISPLAY 

    который возвращается мне

     server/unix:10 MIT-MAGIC-COOKIE-1 blablablablabla 

    Тогда я

     sudo su xauth add server/unix:10 MIT-MAGIC-COOKIE-1 blablablablabla 

    И после запуска X-приложения. Я понимаю, это правильно.

    Проблема в Centos7, я делаю

     xauth list $DISPLAY 

    И он ничего не возвращает. Я пытаюсь добавить волшебные куки MIT, данные

     xauth list 

    Но, конечно, это не сработает. Обычная X-пересылка через ssh, без sudo.

    Настройки sshd одинаковы на 3 серверах:

    1. slackware WORKS
    2. hpux WORKS
    3. centos7 НЕ РАБОТАЕТ

  • Как исправить unison failing с «Fatal error: Internal error: Новые архивы не идентичны» для идентичных путей?
  • Как отключить удаленный вход root через ssh?
  • Ошибка при приеме xpra
  • Изменение порядка приватных ключей, передаваемых через SSH-вход
  • Включить убийство X.org с помощью специальной комбинации клавиш
  • Как ssh запускает команду?
  • 2 Solutions collect form web for “ssh и sudo, но нет $ DISPLAY”

    Другим решением является объединение файла .Xauthority текущего пользователя с файлом пользователя root.

    1. ssh user@host
    2. измените разрешения файла .Xauthority, чтобы у root также был доступ к нему.
    3. sudo su - root
    4. xauth merge /home/users/user/.Xauthority

    Контрольная работа

     gedit somefile.log 

    Он должен открыть окно gedit.

    Решение найдено. Альтернативный метод, скопированный из этого блога Использование этого скрипта

     userfirst=sshloginuser usersecond=sudoorsuuser $usersecond@host$ su - $userfirst -c 'xauth list' |\ grep `echo $DISPLAY |\ cut -d ':' -f 2 |\ cut -d '.' -f 1 |\ sed -es/^/:/` |\ xargs -n 3 xauth add 

    Или просто Регистрация в качестве пользователя1

     xauth list 

    su или sudo su user2

     xauth add OUTPUTOFXAUTHLIST 
    Linux и Unix - лучшая ОС в мире.