Xvnc4, запущенный из xinetd, отображает только пустой серый экран X

Я пытаюсь настроить коробку Ubuntu 10.10, чтобы любой мог подключиться к порту 5900 и быть замеченным менеджером входа в систему gdm. Для этого я добавил запись vnc в / etc / services и запускаю Xvnc4, используя этот файл конфигурации xinetd:

service vnc
{
  protocol = tcp
  socket_type = stream
  wait = no
  user = nobody
  server = /usr/bin/Xvnc
  server_args = -geometry 1000x700 -depth 24 -broadcast -inetd -once -securitytypes None
}

Это работает... Я могу запустить несколько сеансов на порт 5900 и получить экран X. Проблема в том, что у меня только пустой серый X экран без запуска приложений.

Я знаю, что когда вы запускаете vncserver из командной строки, он будет искать в вашем каталоге ~/.vnc/ ваши файлы passwd и xstartup, и я думаю, что я хочу сделать, это поместить "gnome-session" в файл xstart. Однако какой файл xstartup? Работающий пользователь - это "никто", у которого явно нет директории ~/.vnc/. Я попробовал файл /root/.vnc/xstartup и файл ~ scott /.vnc / xstartup, и, похоже, они даже не читались.

Я изменил службу xinetd vnc, чтобы она "связывала" Xvnc4. Я просмотрел все "открытые" строки и не понял, какой файл он пытается прочитать для xstart.

Кто-нибудь может помочь? Я просто хочу терминальный сервер, где пользователю предоставляется экран входа в систему gdm.

1 ответ

Вы должны запустить его как пользователь, чей сеанс VNC вы хотите запустить. Вам также, вероятно, нужно установить $HOME так что он может найти .vnc каталог. Попробуйте что-то вроде этого:

service vnc
{
  protocol = tcp
  socket_type = stream
  wait = no
  user = someuser
  server = /usr/bin/env
  server_args = HOME=/home/someuser /usr/bin/Xvnc -geometry 1000x700 -depth 24 -broadcast -inetd -once -securitytypes None
}

Вы также, вероятно, хотите другие параметры среды; вероятно source ~/.bash_profile в xstartupи вам также может понадобиться установить $USER в явном виде.

Другие вопросы по тегам