Forum Astuces.divers Pulseaudio, mpd, systemd et x2go : un débogage qui fut difficile

Posté par  . Licence CC By‑SA.
Étiquettes :
4
21
déc.
2020

Je poste ici au cas où cela peut servir à quelqu'un.

mpd fonctionnait bien (pas de messages d'erreur), mais je n'entendais plus le son.
J'avais configuré mpd pour une utilisation "system-wide" avec Pulseaudio.

Le soucis est que j'avais deux processus Pulseaudio qui tournaient, dont l'un appartenait à un utilisateur non connecté.

Après une longue recherche, je me rends compte que c'est systemd qui lance automatiquement au boot ce Pulseaudio pour cet utilisateur non connecté.
Et cela parce que cet utilisateur est listé en tant que "linger" dans /var/lib/systemd/linger/.

Mais qui diable a ajouté cet utilisateur en tant que "linger" ?
Eh bien c'est x2go : apparemment c'est pour ne pas tuer la session quand elle est suspendue.

La tache ardue est maintenant de désactiver Pulseaudio pour cet utilisateur (qui de toute façon n'utilise pas Pulseaudio à priori). Ce n'est vraiment pas une mince affaire avec systemd.

Le seul moyen que j'ai trouvé:

ln -s /dev/null /home/<user>/.config/systemd/user/pulseaudio.socket
ln -s /dev/null /home/<user>/.config/systemd/user/pulseaudio.service

Et ensuite Pulseaudio n'est plus lancé pour cet utilisateur au boot.
Et mpd peut de nouveau jouer de la musique.

Donc si vous utilisez mpd et x2go, faites bien attention !

  • # systemctl --user

    Posté par  . Évalué à 3.

    Salut

    ce ne serait pas plutôt un truc du genre qu'il faudrait faire?

    systemctl --user stop pulseaudio.service
    systemctl --user stop pulseaudio.socket

    systemctl --user disable pulseaudio.service
    systemctl --user disable pulseaudio.socket

    cf par exemple la doc : https://wiki.archlinux.fr/Systemd/utilisateur

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.