Falhas no serviço de usuário systemd
Você pode receber um dos erros a seguir ao atualizar ou ao executar initialize-tsm
durante uma nova instalação:
- "Failed to get D-Bus connection: No such file or directory" (Falha ao obter a conexão D-Bus: nenhum arquivo ou diretório como esse.)
- "$XDG_RUNTIME_DIR not found" ($XDG_RUNTIME_DIR não encontrado)
- "systemd unit user@<userID> is not running. Check /var/log/messages or /var/log/syslog." (a unidade systemd user@<userID> não está em execução. Verifique /var/log/messages ou /var/log/syslog.)
Segundo plano
A partir da versão 2018.1, o Tableau Server usa o serviço do usuário systemd
para gerenciar processos. Isso significa que há um processo systemd
que funciona como o usuário sem privilegiados. Por padrão, a configuração do Tableau Server cria uma conta sem privilégios chamada tableau
. Os processos do Tableau Server são gerados a partir do processo systemd
e não do processo systemd
em todo o sistema, que funciona como raiz.
Importante: esta observação de solução de problemas aplica-se principalmente a distros baseados em RHEL 7. No entanto, se encontrar um desses erros, é possível que existam os mesmos problemas nos distros do Ubuntu.
O serviço do usuário systemd
não é usado com tanta frequência quanto o gerenciador de processos systemd
normal. Red Hat desativou o serviço de usuário systemd
no RHEL 7 (e, assim, todas os distros que vêm do RHEL, como CentOS, Oracle Linux 7, Amazon Linux 2). No entanto, o RedHat garantiu ao Tableau que a execução do serviço de usuário systemd
é compatível desde que o serviço seja reativado.
Atualizar do Tableau Server no Linux 10.5
Se você atualizando do Tableau Server 10.5, verifique se o usuário sem privilégios tem um shell e um diretório inicial válidos. No Tableau Server 10.5, o Tableau criou deliberadamente o usuário sem privilégios com shell definido como /sbin/nologin
e diretório inicial como "/
". Se o usuário sem privilégios foi criado por initialize-tsm
, então durante a atualização para a versão 2018.1 o Tableau atualiza o shell e o diretório inicial.
No entanto, se você criou o usuário sem privilégios durante a instalação inicial do a versão 10.5, então ocorrerá um erro ao tentar atualizar.
Para corrigir isso, defina o shell como /sbin/nologin
e o diretório inicial como "/
",e, em seguida, execute a atualização novamente.
Nova solução de problemas de erro de instalação
Verifique se o serviço de usuário systemd
está em execução.
Verifique ao executar o comando, ps -fww $(pgrep -f "systemd --user")
Se o serviço do usuário systemd
não estiver sendo executado, algo o impediu de começar.
Siga esta lista para solucionar problemas:
Verifique os registros em
/var/log/messages
Execute
journalctl
Verifique se alguma personalização que você possa ter feito na configuração PAM não foi removeu
pam_systemd.so
.Se o arquivo RHEL 7 PAM
/etc/pam.d/system-auth
estiver faltando a seguinte linha:-session optional pam_systemd.so
ele deve ser adicionado de volta ao Tableau Server para funcionar.
Se
-session optional pam_systemd.so
estiver presente na configuração PAM, o serviço do usuário não pode ser inicializado e a mensagem de erro$XDG_RUNTIME_DIR not found
for exibida em/var/log/messages
, não tente definir a variável de ambiente. Neste cenário, o erro não é preciso.O verdadeiro erro é que o módulo PAM
pam_systemd.so
não consegue alocar a sessão do usuário. A configuração padrão suprime mensagens de erro dopam_systemd.so
. Para mostrar mensagens de erro e depurar mensagens, altere a linha em/etc/pam.d/system-auth
de-session optional pam_systemd.so
parasession optional pam_systemd.so debug
. (A remoção do hífen inicial vai mostrar as mensagens de erro, e a adição dedebug
mostrará registros mais detalhados.)Agora você pode olhar os arquivos em
/var/log/messages
, em/var/log/secure
e em/var/log/audit/audit.log
para ver mensagens de erro.
Exemplo
Você pode ver a seguinte mensagem de erro:
systemd
-logind: Failed to mount per-user tmpfs directory /run/user/0: Permission denied
Nesse caso, pesquisar o erro on-line leva ao artigo do Redhat KB, https://access.redhat.com/solutions/2460611(O link abre em nova janela).
O artigo recomenda atualizar o pacote selinux-policy
executando sudo yum update selinux-policy
.
Em alguns casos, a atualização da versão 3.12.X para a 3.13.X corrige um problema $XDG_RUNTIME_DIR not found
. Certifique-se de executar sudo reboot
após atualizar o pacote.