Ошибка Gtk-WARNING **: cannot open display: при запуске программ от имени другого пользователя

При запуске графических программ от имени другого пользователя ему требуется разрешение на доступ к X серверу. Такое разрешение выдается командой xost в различных вариациях. Кроме того программе необходимо указать адрес дисплея на котором запущены иксы. Xhost устанавливает разрешение на время текущей сессии, примеры команды:

xhost +SI:localuser:root
# разрешить пользователю root
xhost +SI:localuser:avtobys
# разрешить пользователю avtobys
xhost +local:local
# разрешить всем локальным хостам и локльным пользователям машины
xhost +
# разрешить всем хостам и кому угодно(плохая идея)

Предположим, нам нужно запустить chromium от имени пользователя avtobys

xhost +SI:localuser:avtobys
# разрешаем пользователю использование X сервера
su - avtobys -c 'export DISPLAY=:0 && chromium'
# указываем адрес дисплея и запускаем нужную прогу

 

Оставить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *