Существует проблема запуска программ X11 из под другого пользователя (root) через ssh туннель и с помощью sudo в сеансе пользователя. Она связана с аутентификацией сеансов X11 (Например выдается ошибка: Invalid MIT-MAGIC-COOKIE-1 keyError: Can't open display: :0.0). Данная проблема решается указанным далее образом.
- Подключаемся к удаленному хосту:
- Получаем рутовые привилегии:
- И объединяем файлы Xauthority:
ssh -Y USER@some.hostname
su -
xauth merge /home/USER/.Xauthority
Все, можно запускать программы X11 от имени root.
Кстати, можно включить форвардинг X11 глобально, в конфигурации ssh - /etc/ssh/ssh_config ( ForwardX11 yes), тогда не нужно добавлять флаг -Y в командной строке.
Запуск программ X11 используя sudo
Для того, чтобы запускать программы X11 используя sudo достаточно внести изменения в файл конфигурации /etc/sudoers. А именно - добавить в список параметра env_keep значения DISPLAY и XAUTHORITY:
Defaults env_keep = "DISPLAY XAUTHORITY ..."
Все, можно запускать программы X11 через sudo. Например попробуйте запустить -
Этот способ работает и из под Gnome и из под KDE. Если в sudoers установлен параметр требовать пароль пользователя, то нужно запускать команду sudo из терминала, так как стандартного диалога GTK/KDE для ввода пароля на предусмотрено.
► Статья полностью...