LINUX.ORG.RU

Вопрос по Х


0

0

Кто сталкивался с такой проблемой в Х, помогите. Есть две машинки, на обоих установлен RHL 7.3. На одной гружу Х-сервер, со второй пытаюсь подконектиться клиентом, как показано ниже. (для простоты примера взят xterm).

[root@Linux73_1 root]# xterm -display 192.168.100.100:0.0 Xlib: connection to "192.168.100.100:0.0" refused by server Xlib: No protocol specified

Warning: This program is an suid-root program or is being run by the root user. The full text of the error or warning message cannot be safely formatted in this environment. You may get a more descriptive message by running the program as a non-root user or by removing the suid bit on the executable. xterm Xt error: Can't open display: %s

Получаю такое сообщение. Как можно решить данную проблему.

Спасибо.


на сервере надо дать доступ для клиента. лучше всего через куки. но для простоты можно через xhost +hostname. На клиенте лучше делать export DISPLAY=host:0; xterm

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

Дело в том, что когда я запускаю xhost +hostname пишет такую фразу: xhost: unable to open display "", Хотя Х-сервер работает, и все нормально. Дальше - больше. Если локально, то под рутом пускает. Тут проблема скорее в этом Xlib: connection to "192.168.100.100:0.0" refused by server Xlib: No protocol specified

Xterm Xt problem: Can't open display 192.168.100.100 on the server, хотя на самом деле все запущено.

Пытаюсь сделать xauth extract - $DISPLAY | ssh hostname xauth merge - но выдает просто ТУПУЮ ошибку, xauth: (argv:):1: bad "extract" command line Я вообще уже вообще ничего не понимаю. Самое интересное, что данную команду я нашел в MAN страницах на xauth. Что скажите по этому поводу?

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

Так. У меня родилось подозрение, что "перевернутая" концепция клиента и сервера в X опятьо вызывает трудности. Поэтому вот тебе step-by-step.

Пусть машина A - машина, где у тебя запущен X и где ты собираешься смотреть картинки. Пусть машина B - та, где ты хочешь выполнять xterm. Для простоты положим, что оби машины не разделены firewall и имеют по одному сетевому интерфейсу.

на машине A:

user@A$ xhost +B

на машине B:

user@B$ xterm -display A:0.0

Проделай это от обычного пользователя plz и огласи результаты. Если сильно не хочется писать сюда, можно мне ivlad -на- extech -точка- ru

ivlad ★★★★★
()

Да, я то все понимаю, что в Х немного перевернутая технология Клиент -сервер. В общем, так как написали мне Вы мне решить не удалось. Я пошел немного другим путем, возможно немного геморойным но тем не менее ОН РАБОТАЕТ. Вот, для интереса привожу.

Linux73_1 - это сервер. Linux73_2 - это клиент. Все это в понятиях Х Window. То есть, на Linux73_1 у меня работают Х, на Linux73_2 я гружу приложения (например xterm)

Linux73_1# echo $DISPLAY :0 Linux73_1# xauth list $DISPLAY Linux73_1/unix:0 MIT-MAGIC-COOKIE-1 076aaecfd370fd2af6bb9f5550b26926 Linux73_1# ssh Linux73_2 Password: Linux73_2$ DISPLAY=Linux73_1:0 Linux73_2$ export DISPLAY Linux73_2$ echo $DISPLAY Linux73_1:0 Linux73_2$ xauth add $DISPLAY . 076aaecfd370fd2af6bb9f5550b26926 Linux73_2$ xterm & [15332] Linux73_2$ exit Linux73_1$

Вот таким вот макаром оно работает, единственное, из-за того что все защищено при каждом старте Х понятное дело этот MIT-MAGIC-COOKIE-1 меняется. Так что, каждый раз приходится проделывать данную операцию.

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

Правильно. Потому я и говорю - логиньтесь через ssh - никакие кукисы копировать не придется...

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