Recentemente segui um guia que encontrei aqui: Como instalar o servidor VNC no RHEL 8 para criar uma sessão VNC para um determinado usuário. Desde então, criei uma nova conta de usuário: engineer
e atualizei o arquivo de serviço systemd para apontar para a nova conta de usuário, conforme mostrado abaixo:
[engineer@localhost ~]$ cat /etc/systemd/system/[email protected]
[Unit]
Description=Remote Desktop Service (VNC)
After=syslog.target network.target
[Service]
Type=forking
WorkingDirectory=/home/engineer
User=engineer
Group=engineer
PIDFile=/home/engineer/.vnc/%H%i.pid
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/bin/vncserver -autokill %i
ExecStop=/usr/bin/vncserver -kill %i
[Install]
WantedBy=multi-user.target
Criei uma nova senha vnc para a engineer
conta e executei o systemctl daemon-reload
comando após criar meu arquivo de serviço, executei o comando: systemctl start vncserver@:1
conforme o guia e agora recebo a seguinte mensagem de erro:
Failed to import environment: Process org.freedesktop.systemd1 exited with status 1
Irritantemente, tudo estava funcionando bem até atualizar o vncserver@
arquivo de serviço.
Curiosamente, se eu reverter todas as configurações do arquivo de serviço para o usuário original, ele funcionará sem falhas.
Isso pode não ser uma resposta em si, mas encontrei uma implementação mais simples do que preciso com base nas informações que encontrei nas duas fontes a seguir, então pensei em compartilhar:
As etapas abaixo pressupõem que você instalou
TigerVNC
e não fez mais nada.Primeiramente entrei na conta do usuário e criei uma senha vnc executando o comando:
Não defini uma senha somente para visualização quando solicitado.
Em seguida modifiquei o
vncserver.user
arquivo localizado em:/etc/tigervnc/
e adicionei meu usuário seguindo os exemplos do arquivo.Depois de salvar minhas alterações, copiei o modelo de configuração do ambiente do usuário do
/etc/tigervnc/
diretório para o diretório da minha conta de usuáriohome
executando o seguinte comando:Após copiar o template, editei o
config
arquivo para definir minha sessão e resolução de tela desejada:Em seguida, copiei o
systemd
modelo de serviço executando o comando:Depois de copiar o arquivo para o diretório correto, modifiquei-o com as duas linhas a seguir:
A razão pela qual adicionei essas duas linhas é que percebi que se você sair do ambiente de área de trabalho enquanto estiver usando a sessão VNC, o
systemd
arquivo de serviço será interrompido. Essas linhas adicionais verificarão isso e reiniciarão o serviço após 15 segundos.As etapas finais realizadas foram primeiro iniciar o
systemd
serviço executando o comando:Então verifiquei se o
systemd
serviço foi iniciado com sucesso por meio do comando:Depois de confirmado que o
systemd
serviço foi iniciado, tentei uma conexão ao endereço IP com a porta:5901
.Depois de ficar satisfeito com tudo, habilitei o
systemd
serviço para que ele iniciasse durante a inicialização:Espero que esta informação seja útil para outras pessoas.