Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Journalctl : Comme simple user daemonisé

3 réponses
Avatar
Grégory Bulot
Bonjour,=20

Encore mes probl=C3=A8mes journalctl=C2=B2=20

* executer journalctl en simple user, =C3=A7a fonctionne sous r=C3=A9serve =
de :=20
usermod -a -G systemd-journal xymon

* lorsque le script est lanc=C3=A9 via xymon (user xymon aussi) =C3=A7a ne
fonctionne pas :

Hint: You are currently not seeing messages from other users and
the system. Users in the 'systemd-journal' group can see all
messages. Pass -q to turn off this notice.

1/ y aurait-il un moyen de n'autoriser "xymon" qu'a lire les logs
postfix=C2=B9 plut=C3=B4t que "tout"

2/ existe-t-il une solution plus propre que de faire :

journalctl --since "600 minutes ago" | /bin/grep
"postfix/smtpd.*NOQUEUE"




=C2=B9 cf r=C3=A9ponse de l0f4r0@tuta.io, Sun, 26 Apr 2020 17:58:36
=C2=B2 ou comment s'ajouter des probl=C3=A8mes que l'on avait pas avec sysv

3 réponses

Avatar
Grégory Bulot
Le Fri, 1 May 2020 22:52:24 +0200 (CEST),
a écrit :
Hello Grégory,
1 mai 2020 à 19:01 de :
* lorsque le script est lancé via xymon (user xymon aussi) ça ne
fonctionne pas :
Hint: You are currently not seeing messages from other users and
the system. Users in the 'systemd-journal' group can see all
messages. Pass -q to turn off this notice.
Tu n'as pas posé de question ici mais c'est bien un problème no n ?
C'est là tout l'output que t'obtiens ? Ça ne se finit pas en "No
journal files were opened due to insufficient permissions." par
exemple ?

Si cette dernière ligne apparait, effectivement, désolé pour avoir
oublié cette ligne (pourtant le usermod -a -G systemd-journal xymon a
bien a été passé)
Je pense que tu devrais sûrement préciser :
* ta version de Debian

cat /etc/debian_version
10.3
* ta version de systemd

dpkg -l systemd | grep "^ii"
ii systemd 241-7~deb10u3 amd64 system and service manager
* ta configuration de journald (/etc/systemd/journald.conf)

grep -v -e "^$" -e "^#" /etc/systemd/journald.conf
[Journal]
* le contenu de ton fameux script (si pas sensible), ses droits
associés et ta manière de l'invoquer.

c'est du secret défense, avec des années de recherches ;-)
#!/bin/bash
[...] #des variables, des fonctions
set -o pipefail
#marche avec un shell en "interactif" en tant que user xymon :
NOQUEUE=$(journalctl --since "600 minutes ago" | /bin/grep
"postfix/smtpd.*NOQUEUE" | /bin/sed 's/.*NOQUEUE: (.*)/1/')
NoQueueErr=$?
if [[ $NoQueueErr -gt 0 ]] ; then
AddToBody "&yellow : Probleme pour parser log NOQUEUE"
FinScript
exit 1
fi
1/ y aurait-il un moyen de n'autoriser "xymon" qu'a lire les logs
postfix¹ plutôt que "tout"
En écrivant un wrapper probablement ?

Probablement. journalctl perds de son intérêt (mon point de vue). Avec
cette hypothèse je préfère trouver le moyen pour que postfix log de
nouveau dans /var/log/mail.log
Bien cordialement,
l0f4r0
Avatar
l0f4r0
Grégory,
2 mai 2020 à 10:33 de :
Le Fri, 1 May 2020 22:52:24 +0200 (CEST),
a écrit :
1 mai 2020 à 19:01 de :
* lorsque le script est lancé via xymon (user xymon aussi) ç a ne
fonctionne pas :
Hint: You are currently not seeing messages from other users and
the system. Users in the 'systemd-journal' group can see all
messages. Pass -q to turn off this notice.
Tu n'as pas posé de question ici mais c'est bien un problème n on ?
C'est là tout l'output que t'obtiens ? Ça ne se finit pas en " No
journal files were opened due to insufficient permissions." par
exemple ?

Si cette dernière ligne apparait, effectivement, désolé po ur avoir
oublié cette ligne (pourtant le usermod -a -G systemd-journal xymon a
bien a été passé)

Je suppose que tu avais déloggué/reloggué juste après l e user xymon ?
Je pense que tu devrais sûrement préciser :
* ta version de Debian

cat /etc/debian_version
10.3
* ta version de systemd

dpkg -l systemd | grep "^ii"
ii systemd 241-7~deb10u3 amd64 system and service manager

Ok, on a tout pareil et chez moi ton script fonctionne :)
* ta configuration de journald (/etc/systemd/journald.conf)

grep -v -e "^$" -e "^#" /etc/systemd/journald.conf
[Journal]

Ton pb pourrait justement venir de ta conf (ex : https://github.com/systemd /systemd/issues/2744).
Tu es probablement en "Storage=auto" sans avoir créé /var/log/j ournal.
A ta place je ferais un test avec "Storage=persistent" a minima pour voir si ça arrange qqch...
Bien cordialement,
l0f4r0
Avatar
Grégory Bulot
Le Sat, 2 May 2020 11:10:44 +0200 (CEST),
a écrit :
Je suppose que tu avais déloggué/reloggué juste après le user xymon ?

bien sur que .... non ... j'ai fait un restart du service c'est Ok
maintenant
J'avais pas pensé au restart tellement convaincu que le script se
lançait toutes les 5 minutes .... ce qui est vrai mais pas le ....
daemon qui lance mon script.
Merci pour m'avoir éclairé !