невозможно открыть X сервер - PullRequest
5 голосов
/ 04 ноября 2011

Я пытаюсь создать скриншот окна Firefox в моем терминале, но постоянно получаю сообщение об ошибке:

root@host [~]# DISPLAY=:1 firefox http://www.cnn.com & sleep 5 && DISPLAY=:1 import -window root -crop 1264x948+0+25 -quality 90 /usr/local/apache/htdocs/screenshot1.jpg && pkill firefox
[1] 30200
import: unable to open X server `:1' @ import.c/ImportImageCommand/364.

Почему это происходит?Как я могу это исправить?

Ответы [ 3 ]

4 голосов
/ 04 ноября 2011

Может быть, попробовать DISPLAY=:0, например?

0 голосов
/ 22 марта 2012

Можете ли вы сказать нам, каков результат при вводе

ls -la /tmp/ | grep X

и

ps | grep X

Кроме того, у меня возникли проблемы с использованием синтаксиса DISPLAY =: 1, поэтому вместо него я использую:

firefox --display=:1 URL_OF_SITE
import -display :1 -window root etc...
0 голосов
/ 04 ноября 2011

Похоже, вы использовали измененный root в терминале после его запуска (или вы вошли в X как root?).Если это так, дисплей не может быть открыт, потому что он принадлежит другому пользователю, и вы не можете просто пойти и показать вещи, отображаемые на чужом дисплее.

Выйдите из корневого сеанса, и он, вероятно, будет работать.Если вы хотите, чтобы он работал из корневого сеанса, взгляните на 'man xhost'.

...