Como posso iniciar um servidor VNC antes de fazer logon?
19
Eu gostaria de executar o x11vnc (ou outro servidor VNC) na minha área de trabalho, mas não consigo encontrar uma maneira de iniciá-lo antes que qualquer usuário efetue login. Voltar quando eu estava usando o vanilla Ubuntu 10.10 Vino fazia isso por padrão. No entanto, não consigo encontrar uma maneira de fazer isso agora no Xubuntu.
Isso pressupõe que o VNC está configurado e pode ser executado:
Copie o bloco de código abaixo em /etc/init.d/vncserver. A maneira mais fácil de fazer isso é copiá-lo para a área de transferência, rodar sudo -i && cat > /etc/init.d/vncserver && exitem um terminal, colar e digitar Ctrl- D`. Certifique-se de alterar a variável USER para o usuário em que você deseja que o servidor VNC seja executado.
#!/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
Torne o script executável com sudo chmod +x /etc/init.d/vncserver.
Então corra sudo update-rc.d vncserver defaults. Isso adiciona os links simbólicos apropriados ao script vncserver, para que sejam enviados os comandos de início e parada no momento apropriado.
Nota: pode ser necessário usá-lo, sudo update-rc.d vncserver 99se o trabalho estiver sendo executado muito cedo no processo de inicialização.
Para iniciar o servidor sem reiniciar, execute sudo /etc/init.d/vncserver start
Por fim, conecte-se ao servidor com um cliente VNC na porta 590X, em que X é o valor de "DISPLAY" no script vncserver
Vá para o compartilhamento da área de trabalho e permita que ele compartilhe e coloque uma boa senha. (clique para permitir permissões)
Vá para a tela e defina-a para bloquear após 30 segundos.
Vá para usuários e permita um login automático.
O servidor vino é iniciado e você deve conseguir se conectar a ele. Você pode usar o ssh para criar um túnel para o VNC, se precisar protegê-lo (usei o PUTTY e isso funcionou muito bem). Você também pode ativar o firewall e apenas permitir o tráfego de um endereço específico. Esta solução funcionou para mim em mais de 20 caixas Ubuntu.
sudo update-rc.d vncserver defaults 99
, eu acho.Minha solução:
O servidor vino é iniciado e você deve conseguir se conectar a ele. Você pode usar o ssh para criar um túnel para o VNC, se precisar protegê-lo (usei o PUTTY e isso funcionou muito bem). Você também pode ativar o firewall e apenas permitir o tráfego de um endereço específico. Esta solução funcionou para mim em mais de 20 caixas Ubuntu.
fonte
O que acontece quando você tenta: (?)
.. e adicione-o nos Aplicativos iniciados automaticamente, para iniciar o servidor vino:
ATUALIZAR:
Tente o seguinte:
Iniciar um servidor VNC no Ubuntu na inicialização
http://www.abdevelopment.ca/blog/start-vnc-server-ubuntu-boot
fonte