LINUX.ORG.RU
ФорумAdmin

Проблема с открытием графических приложений

 


0

2

Опишу подробно, что делаю. Запускаю suse. запускаю vncserver. соединяюсь через броузер с рабочим столом vncserver. Получаю рабочий стол пользователя в броузере. У пользователя по умолчанию шел= /bin/bash. запускаю терминал и в нем запускаю программы работающие через графику(xclock) все нормально работает, приложения с графикой запускается. Переключаюсь на пользователя у которого оболочка csh приложения работающие через графику - вылетают. Если переключиться на пользователя с оболочкой bash, то до одного вложенного пользователя графика еще отображается, со второго переключения su - user1; su - user2; графика уже не отрабатывает. Но это не беда. Проблема как раз в том, что при переключении на пользователя с оболочкой /bin/csh дисплей теряется. Помогите решить проблему. Мне надо именно такой способ запуска графических приложений. Чтобы пользователь заходил под собой на рабочий стол и в консоли переключался на определенную учетку у которой шел csh и именно в ней запускал программу с графическим интерфейсом. Но я не знаю как в этом случае перенаправить дисплей.

user123 > cat /etc/passwd | grep user123
user123 :x:222:333:System Administrator:/home/user123:/bin/bash

Работет все ок пока я не перейду на другого пользователя

user123> sudo su - eeeadm 
eeeadm > cat /etc/passwd | grep eeeadm 
eeeadm:x:111:222:System Administrator:/home/eeeadm:/bin/csh

eeeadm> xclock
#Error: Can't open display:

eeeadm> firefox
#Error: GDK_BACKEND does not match available displays

eeeadm> xmessage test
#Error: Can't open display:

exit

user123 > su - eeeadm
Password: 
> xclock
#Error: Can't open display: 
***

не работает ни через sudo ни через su-(pam.d)

# cat su-l

#%PAM-1.0
auth     sufficient     pam_rootok.so
auth     [success=2 new_authtok_reqd=ok ignore=ignore default=ignore]      pam_succeed_if.so uid >= 200
auth     required       pam_wheel.so use_uid
auth     sufficient     pam_wheel.so trust use_uid
auth     include        common-auth
account  sufficient     pam_rootok.so
account  include        common-account
password include        common-password
session  include        common-session
session  optional       pam_xauth.so
#13.02.2017



Последнее исправление: Shinma (всего исправлений: 4)

Брось ты мучить это VNC. Пробуй x2Go Это чисто от NX

Bootmen ☆☆☆
()
Ответ на: комментарий от Lustig
user123> echo $XAUTHORITY 

user123> echo $DISPLAY
:15

eeeadm> echo $XAUTHORITY
XAUTHORITY: Undefined variable.
eeeadm:ecqadm 58> echo $DISPLAY
DISPLAY: Undefined variable.

Еще раз хочу обратить внимание - у первого пользователя bash, у второго csh. В этой связке не работают bash связки.

Shinma
() автор топика
Ответ на: комментарий от Shinma

Если напрямую зайти под eeeadm то графические приложения запускаются, но задача стоит именно в запуске из под user123.

Shinma
() автор топика
Ответ на: комментарий от Shinma

А если добавить в /etc/sudoers.d/xorg строку Defaults env_keep += «DISPLAY XAUTHORITY» и установить значение переменной export XAUTHORITY=~/.Xauthority для пользователя eeeadm и попробовать запустить программу через sudo?

Lustig
()
Ответ на: комментарий от Lustig

попробую, но не понимаю значение export в вашем предложении. с sudo все понятно.

Shinma
() автор топика

Нашел решение. Не тем методом который хотел, но удовлетворяющий условиям.

Внутри этого рабочего стола VNC запускаю консоль и в ней соединяюсь через иксы по ssh с нужным логином. ssh localhost -X -l user_name Потом в этой консоли запускаю софт обладающий графической оболочкой и все работает. И не важно какой shell и env у пользователя.

А ну да - необходима X форвардинг в настройках ssh.

Shinma
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.