Как запустить VNC-сервер при загрузке?

с живым cd откройте терминал как root (sudo -i) и используйте dd.

example: dd if=origin of=destination.

вы можете сделать копию с одного hdd на другой, подобный этому

dd if=/dev/sdx of=/dev/sdy

с одним и тем же live-cd, вы можете использовать gparted и изменять размер, который вы хотите.

21
задан 17 April 2012 в 19:18

7 ответов

Сначала установите сервер TightVNC sudo apt-get install tightvncserver. Настройте сервер VNC для пользователя, с которым вы хотите войти. Когда вы запускаете «vncserver» в первый раз, он попросит вас установить пароль. только разрешить туннелирование или VPN-соединения SSH. Чтобы запустить программы или сеанс при запуске сеанса VNC, измените ~/.vnc/xstartup. Вот пример.
#!/bin/sh

xrdb $HOME/.Xresources
xsetroot -solid black
/opt/azureus/azureus &
k3b &
icewm-session &
Скопируйте следующее в /etc/init.d/vncserver. Самый простой способ сделать это - скопировать его в буфер обмена, запустить sudo -i && cat > /etc/init.d/vncserver && exit в терминале, вставить его и набрать CTRL-D. Обязательно измените переменную USER на любого пользователя, с которым вы хотите управлять сервером VNC.
#!/bin/sh -e
### BEGIN INIT INFO
# Provides:          vncserver
# Required-Start:    networking
# Default-Start:     3 4 5
# Default-Stop:      0 6
### END INIT INFO

PATH="$PATH:/usr/X11R6/bin/"

# The Username:Group that will run VNC
export USER="mythtv"
#${RUNAS}

# The display that VNC will use
DISPLAY="1"

# Color depth (between 8 and 32)
DEPTH="16"

# The Desktop geometry to use.
#GEOMETRY="<WIDTH>x<HEIGHT>"
#GEOMETRY="800x600"
GEOMETRY="1024x768"
#GEOMETRY="1280x1024"

# The name that the VNC Desktop will have.
NAME="my-vnc-server"

OPTIONS="-name ${NAME} -depth ${DEPTH} -geometry ${GEOMETRY} :${DISPLAY}"

. /lib/lsb/init-functions

case "$1" in
start)
log_action_begin_msg "Starting vncserver for user '${USER}' on   localhost:${DISPLAY}"
su ${USER} -c "/usr/bin/vncserver ${OPTIONS}"
;;

stop)
log_action_begin_msg "Stoping vncserver for user '${USER}' on localhost:${DISPLAY}"
su ${USER} -c "/usr/bin/vncserver -kill :${DISPLAY}"
;;

restart)
$0 stop
$0 start
;;
esac

exit 0
Сделайте исполняемый файл сценария с помощью sudo chmod +x /etc/init.d/vncserver. Наконец, подключитесь к вашему серверу с клиентом VNC на порту 590X, где X - значение «DISPLAY» в сценарии vncserver. На OS X мне нравится использовать Chicken of VNC. В Windows и Linux клиент TightVNC работает хорошо.

Источник

15
ответ дан 25 May 2018 в 12:48

Одна возможность: /etc/rc.local

Содержимое говорит:

# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits. 
#
# By default this script does nothing

Биты выполнения уже установлены на 755 в моей системе. (chmod 755 /etc/rc.local)

Вы можете поместить любую команду там, которая будет выполняться с правами root.

Это нормально для вашей цели, пока вы это делаете не меняйте уровни запуска, я думаю. (Если вы не знаете, какие уровни выполнения, неважно).

3
ответ дан 25 May 2018 в 12:48

Если вы используете TigerVNC, тогда он устанавливает /etc/init.d/vncserver, который запускает все vncservers, настроенные в /etc/sysconfig/vncservers, например. следующий запустил бы 2 экземпляра на дисплее 1 & amp; 2 при запуске.

# <display>:<user>
VNCSERVERS="1:root"
VNCSERVERARGS[1]="-geometry 1920x1080"

VNCSERVERS="2:guest"
VNCSERVERARGS[2]="-geometry 800x600 -SecurityTypes None"
2
ответ дан 25 May 2018 в 12:48

это, кажется, старое сообщение, но тема может быть интересной для некоторых пользователей. Чтобы запустить vnc при загрузке, вам необходимо

установить программное обеспечение сервера vnc (здесь мы будем использовать x11vnc) настроить сценарий запуска (используемый для запуска службы vnc)

Шаг 1 - установите сервер x11vnc

из командной строки, введите

 sudo apt-get install x11vnc

. Чтобы добавить безопасность, вы должны установить pwd

sudo x11vnc -storepasswd

Шаг 2. Настройте свой сценарий запуска

, если ваша версия ubuntu ниже 15.04,

вы создаете конфигурационный файл в /etc/init.d/x11vnc.conf и заполняете его правильными командами, которые будут выполняться

start on login-session-start  
script  
/usr/bin/x11vnc -xkb -auth
/var/run/lightdm/root/:0
-noxrecord -noxfixes -noxdamage 
-rfbauth /etc/x11vnc.pass 
-forever -bg -rfbport 5900 -o /var/log/x11vnc.log  
end script
, если ваша версия ubuntu ниже 15.04,

эти системы используют systemd, и вам нужно будет создать свой файл служебной единицы в разделе /lib/systemd/system/x11vnc.service и заполнить его правильными командами для выполнения

[Unit] Description=Start x11vnc at startup. After=multi-user.target

[Service] Type=simple ExecStart=/usr/bin/x11vnc -auth guess -forever
-loop -noxdamage -repeat -rfbauth /home/USERNAME/.vnc/passwd -rfbport 5900 -shared

[Install] WantedBy=multi-user.target

Обновить службу

sudo systemctl daemon-reload

sudo systemctl enable x11vnc.service

Подробную информацию можно найти на странице справки Ubuntu Community wiki (см. здесь), или вы можете попробуйте использовать этот быстрый способ использовать recice

Для версии Ubuntu ниже 15.04, проверьте это сообщение для U buntu версии 15.04 или новее, проверьте это сообщение

Надеюсь, это полезно

2
ответ дан 25 May 2018 в 12:48

Во время загрузки вы можете запустить cron для вас. Просто используйте строку «@reboot» вместо чисел, которые вы обычно используете, чтобы указать, когда вещь должна работать.

Например, вот как я запускаю Dropbox на машине, на которой он не работает автоматический запуск:

# m h  dom mon dow   command
@reboot         /usr/bin/dropbox start
0
ответ дан 25 May 2018 в 12:48

'sudo update-rc.d vncserver defaults' сообщил, что его не было; «Обязательный-Стоп:» (даже пустой). Поэтому я добавил его, как показано ниже. И больше никаких предупреждений.

    #!/bin/sh -e
    ### BEGIN INIT INFO
    # Provides:          vncserver
    # Required-Start:    networking
    # Required-Stop:     
    # Default-Start:     3 4 5
    # Default-Stop:      0 6
    ### END INIT INFO
0
ответ дан 25 May 2018 в 12:48

Добавьте строку ниже в файл crontab. Это означает, что команда после выполнения ключевого слова @reboot выполняется во время очень перезагрузки.

@reboot /usr/bin/vncserver :1

Чтобы открыть файл crontab, необходимо использовать команду crontab -e

0
ответ дан 25 May 2018 в 12:48

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

Похожие вопросы: