Ir para o conteúdo

VNC

De RJGSWiki
Revisão de 22h24min de 26 de julho de 2025 por Rjgs (discussão | contribs) (X11VNC)

VNC

X11VNC

Instalação no Ubuntu

Para instalar use o comando:

sudo apt-get install x11vnc -y

Para criar a senha:lembre-se de mudar SEU_PASSWORD pela senha correspondente

sudo x11vnc -storepasswd SEU_PASSWORD /etc/x11vnc.pass 

Para dar permissão ao arquivo de senha:

sudo chmod 744 /etc/x11vnc.pass 

O comando a seguir vai rodar o X11vnc

sudo x11vnc -auth /var/run/lightdm/root/:0 -noxrecord -noxfixes -noxdamage -rfbauth /etc/x11vnc.pass -forever -bg -rfbport 5900 -o /tmp/x11vnc.log 

Script para instalar e iniciar

Crie um arquivo com a extensão ".sh" contendo esse conteúdo abaixo

vim script_vnc.sh
#!/bin/bash

echo "################################"
echo "### INICIANDO O SERVIDOR VNC ###"
echo "################################"
echo " "
################################
### Declaração de Variáveis
VNC_IP="$(hostname -I | awk '{print $1}')"
################################

################################
### Verificação e instalação do VNC

# Verifica se o x11vnc está instalado
if ! command -v x11vnc >/dev/null 2>&1; then
    echo "x11vnc não está instalado. Instalando..."

    # Atualiza repositórios (opcional, mas recomendado)
    sudo apt update

    # Instala o x11vnc
    sudo apt install -y x11vnc

    echo "x11vnc instalado com sucesso!"
else
echo " "
echo "### Insira a Senha do acesso VNC Client:"
echo " "
read VNC_SENHA
#
sudo x11vnc -storepasswd $VNC_SENHA /etc/x11vnc.pass
#
echo " "
echo "### Iniciando o servidor VNC"
echo " "
#
sudo x11vnc -auth /var/run/lightdm/root/:0 -noxrecord -noxfixes -noxdamage -rfbauth /etc/x11vnc.pass -forever -bg -rfbport 5900 -o /tmp/x11vnc.log
fi
sleep 5
#
echo " "
echo "#################################################"
echo "### Seu servidor de VNC está instalado e rodando."
echo "### Para acessar esse computador:                "
echo "### IP...: $VNC_IP                               "
echo "### Porta: 5900                                  "
echo "### Senha: $VNC_SENHA                            "
echo "#################################################" 
echo " "

Depois de criar e salvar, dê permissões

sudo chmod +x script_vnc.sh

Rode o script

./script_vnc.sh

Script para iniciar junto com o sistema

Bom, até aí o aplicativo vai funcionar direitinho. Contudo, após reiniciar a máquina ele não mais estará rodando. Para fazer com que o programa inicie com o Sistema Operacional, será necessário criar um script dentro de /etc/init.d/, dar permissão de execução e executar o comando "update-rc.d" para fazer com que isso aconteça.

Criar o arquivo /etc/init.d/vnc-server

sudo vim /etc/init.d/vnc-server 

adicionar as linhas de comando dentro do arquivo:

#!/bin/bash
 
start() {
    echo "Iniciando VNC-Server..."
    x11vnc -env FD_XDM=1 -display :0 -forever -rfbauth /root/.vncpasswd &>> /var/log/vnc-server.log &
    echo "[OK]"
}
 
stop() {
    echo "Desligando VNC-Server..."
    killall x11vnc &>> /var/log/vnc-server.log
    echo "[OK"]
}
    case "$1" in
    start) start
    ;;
    stop) stop
    ;;
    restart) stop; start
    ;;
    *) echo "Uso correto: (start|stop|restart)"
    ;;
esac

Para dar permissão de execução para ao script:

chmod +x /etc/init.d/vnc-server 

Agora, vamos temos que colocar o script para iniciar com o sistema:

cd /etc/init.d/ 
update-rc.d vnc-server defaults 

O x11vnc já está configurado para iniciar com o sistema e você pode fazer o STOP e START com os comandos abaixo:

Operação do Daemon

/etc/init.d/vnc-server start 
/etc/init.d/vnc-server stop 
/etc/init.d/vnc-server restart 

Caso você não precise mais que ele suba junto com o sistema operacional, faça o comando abaixo:

cd /etc/init.d/ 
update-rc.d -f vnc-server remove 

A porta padrão de execução do VNC é a 5900

Para iniciar

/etc/init.d/vnc-server 

crie um script com o comando acima

#!/bin/bash
#
/etc/init.d/vnc-server

Fontes