2013-02-27 8 views
1

Я хочу запустить vino-сервер vino (vino-server) из crontab при перезагрузке на Ubuntu 12.10.Ubuntu 12.10 Crontab для запуска Vino VNC-сервера

Мой кронтаб запись выглядит следующим образом:

## Start the vino server 
@reboot sleep 20 ; /home/user/Desktop/start_vino_vnc.sh 

Мой сценарий выглядит следующим образом:

#! /bin/bash 

export DISPLAY=:0.0 
xhost + 
nohup /usr/lib/vino/vino-server > /home/user/Desktop/vino_log.txt 

Я постоянно получаю следующие ошибки в моем файле журнала:

[email protected]:~/Desktop$ cat vino_log.txt 
No protocol specified 
Cannot open display: 
Run 'vino-server --help' to see a full list of available command line options 

Из команды если я пытаюсь запустить сервер без SSH'ing с переадресацией X-сервера, тогда я получаю ту же ошибку:

[email protected]:~/Desktop$ /usr/lib/vino/vino-server 
No protocol specified 
Cannot open display: 
Run 'vino-server --help' to see a full list of available command line options 

Как я могу это достичь? Мне нужно, чтобы это произошло через crontab, и нет монитора на безголовом сервере Ubuntu.

+0

Если вы хотите, чтобы скрипт выполнить при перезагрузке, вы не должны использовать кронтаб. Crontab предназначен для определенного времени исполнения. Вам нужно создать сценарий запуска в '/ etc/init.d' – fedorqui

+0

OK - спасибо за ввод. Что касается правильной настройки переменной DISPLAY - как это сделать? Я могу запустить сценарий любым способом, но даже если я просто запустил свой сценарий из командной строки, я получаю ту же ошибку, что и выше. – PhilBot

+0

На Ubuntu 16 это сработало для меня https://stackoverflow.com/a/31710029/543087 – user5858

ответ

2

Был вариант командной строки для настройки дисплея - для меня он работал, чтобы установить эту опцию:

#! /bin/bash 

export DISPLAY=:0.0 
xhost + 
nohup /usr/lib/vino/vino-server --display=:0.0 > /home/pclass/Desktop/vino_log.txt