Fouten van de systemd-gebruikersservice
U kunt een van de volgende fouten ondervinden tijdens het upgraden of uitvoeren van initialize-tsm
tijdens een nieuwe installatie:
- ‘Kan geen D-Bus-verbinding tot stand brengen: bestand of map bestaat niet’
- ‘$XDG_RUNTIME_DIR niet gevonden’
- ’systemd unit user@<userID> is niet actief. Controleer /var/log/messages of /var/log/syslog’.
Achtergrond
Vanaf 2018.1 gebruikt Tableau Server de gebruikersservice systemd
om processen te beheren. Dit betekent dat er een systemd
-proces is dat wordt uitgevoerd als een gebruiker zonder machtigingen. Standaard maakt Tableau Server Setup een account zonder machtigingen aan met de naam tableau
. De Tableau Server-processen worden gegenereerd vanuit het proces systemd
en niet als het systeembrede proces systemd
, dat als hoofdproces wordt uitgevoerd.
Belangrijk: deze opmerking voor probleemoplossing is voornamelijk van toepassing op distributies op basis van RHEL 7. Als u een van deze fouten ziet, is het echter mogelijk dat dezelfde problemen ook voorkomen bij Ubuntu-distributies.
De gebruikersservice systemd
wordt niet zo vaak gebruikt als de normale procesmanager van systemd
. Red Hat heeft de gebruikersservice systemd
uitgeschakeld in RHEL 7 (en dus in alle distributies die van RHEL afkomstig zijn, zoals CentOS, Oracle Linux 7, Amazon Linux 2). RedHat heeft Tableau echter verzekerd dat het uitvoeren van de gebruikersservice systemd
wordt ondersteund zolang de service opnieuw wordt ingeschakeld.
Upgraden van Tableau Server op Linux 10.5
Als u een upgrade uitvoert vanaf Tableau Server 10.5, controleer dan of de gebruiker zonder machtigingen een geldige shell en home directory heeft. Voor Tableau Server 10.5 heeft Tableau opzettelijk de gebruiker zonder machtigingen aangemaakt met de shell directory ingesteld op /sbin/nologin
en de home directory op ‘/
’. Als de gebruiker zonder machtigingen is aangemaakt door initialize-tsm
, dan werkt Tableau tijdens de upgrade naar 2018.1 de shell en de home directory bij.
Als u tijdens de eerste installatie van 10.5 een gebruiker zonder machtigingen hebt aangemaakt, krijgt u echter een foutmelding wanneer u probeert te upgraden.
Om dit te verhelpen, moet u de shell instellen op /sbin/nologin
en de home directory ’/
’. Dan voert u de upgrade opnieuw uit.
Problemen oplossen bij nieuwe installatiefouten
Controleer of de gebruikersservice systemd
wordt uitgevoerd.
Controleer dit met de opdracht: ps -fww $(pgrep -f "systemd --user")
Als de gebruikersservice systemd
niet wordt uitgevoerd, kan deze niet worden gestart.
Volg deze lijst om problemen op te lossen:
Controleer de logboeken in
/var/log/messages
Voer
journalctl
uit.Controleer of eventuele aanpassingen aan uw PAM-configuratie,
pam_systemd.so
niet hebben verwijderd.Als in het RHEL 7 PAM-bestand
/etc/pam.d/system-auth
de volgende regel ontbreekt:-session optional pam_systemd.so
dan moet deze opnieuw worden toegevoegd om Tableau Server te laten functioneren.
Als
-session optional pam_systemd.so
aanwezig is in uw PAM-configuratie, kan de gebruikersservice niet starten en wordt de foutmelding$XDG_RUNTIME_DIR not found
getoond in/var/log/messages
. Probeer de omgevingsvariabele niet in te stellen. In dit scenario is de fout onjuist.De echte fout is dat de PAM-module
pam_systemd.so
de gebruikersessie niet kan toewijzen. De standaardconfiguratie onderdrukt foutmeldingen vanpam_systemd.so
. Om foutmeldingen en foutopsporingsberichten aan de oppervlakte te brengen, wijzigt u de regel in/etc/pam.d/system-auth
van-session optional pam_systemd.so
naarsession optional pam_systemd.so debug
. (Als u het eerste koppelteken verwijdert, worden de foutmeldingen zichtbaar en als udebug
toevoegt, zal dit meer uitgebreide logboeken opleveren.)Nu kunt u de bestanden
/var/log/messages
,/var/log/secure
en/var/log/audit/audit.log
bekijken en foutmeldingen zien.
Voorbeeld
Mogelijk ziet u het volgende foutbericht:
systemd
-logind: Failed to mount per-user tmpfs directory /run/user/0: Permission denied
In dit geval leidt online zoeken naar de fout naar het Redhat KB-artikel: https://access.redhat.com/solutions/2460611(Link wordt in een nieuw venster geopend).
Het artikel beveelt aan om het pakket selinux-policy
te updaten door het uitvoeren van sudo yum update selinux-policy
.
In sommige gevallen lost een upgrade van versie 3.12.X naar 3.13.X een probleem met $XDG_RUNTIME_DIR not found
op. Voer sudo reboot
uit na updaten van het pakket.