Это меня расстраивает. Почему не работает и как заставить работать?
У меня недавно установлен Ubuntu 10.04.2 (Lucid Lynx). Я установил X и gdm. Gdm настроен на автоматический вход пользователя. К компьютеру не подключена клавиатура, но я хочу отобразить кое-что на ее локальном дисплее.
Обычно я просто подключаюсь по ssh к компьютеру как пользователь, который вошел в систему автоматически, и запускал, например, «DISPLAY =: 0.0 xclock».
Но теперь я получаю только ответ:
user@host:~$ DISPLAY=:0.0 xclock No protocol specified Error: Can't open display: :0.0
Однако, если я вхожу в систему как root, это работает.
Похоже, в этой проблеме есть пара ошибок: Вот этот предотвращает создание файла .Xauthority. И вот этот предотвращает работу предлагаемого обходного пути при использовании автоматического входа в систему.
Таким образом, решение заключалось в том, чтобы изменить автоматический вход на временный вход с небольшой задержкой и добавить следующее в / etc / gdm / PostLogin / default
#!/bin/bash auth=$HOME/.Xauthority if [ -e $auth ]; then diff <(xauth extract - $DISPLAY) <(XAUTHORITY=$auth xauth extract - $DISPLAY) > /dev/null && exit 0 fi xauth extract - $DISPLAY | XAUTHORITY=$auth xauth merge - chown $USER $auth