Problème avec pulseaudio

Le
steve
Bonjour,

Sur une testing Í  jour.

Des logs:

Jun 19 07:39:00 box pulseaudio[831974]: Failed to create secure directory (/nonexistent/.config/pulse): Aucun fichier ou dossier de ce type
Jun 19 07:39:00 box systemd[831936]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Jun 19 07:39:00 box systemd[831936]: pulseaudio.service: Failed with result 'exit-code'.
Jun 19 07:39:00 box systemd[831936]: Failed to start Sound Service.
Jun 19 07:39:00 box systemd[831936]: Startup finished in 347ms.
Jun 19 07:39:00 box systemd[831936]: pulseaudio.service: Scheduled restart job, restart counter is at 1.
Jun 19 07:39:00 box pulseaudio[831984]: Failed to create secure directory (/nonexistent/.config/pulse): Aucun fichier ou dossier de ce type
Jun 19 07:39:00 box systemd[831936]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Jun 19 07:39:00 box systemd[831936]: pulseaudio.service: Failed with result 'exit-code'.
Jun 19 07:39:00 box systemd[831936]: Failed to start Sound Service.
Jun 19 07:39:00 box systemd[831936]: pulseaudio.service: Scheduled restart job, restart counter is at 2.
Jun 19 07:39:00 box pulseaudio[831985]: Failed to create secure directory (/nonexistent/.config/pulse): Aucun fichier ou dossier de ce type
Jun 19 07:39:00 box systemd[831936]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Jun 19 07:39:00 box systemd[831936]: pulseaudio.service: Failed with result 'exit-code'.
Jun 19 07:39:00 box systemd[831936]: Failed to start Sound Service.
Jun 19 07:39:01 box systemd[831936]: pulseaudio.service: Scheduled restart job, restart counter is at 3.
Jun 19 07:39:01 box pulseaudio[831986]: Failed to create secure directory (/nonexistent/.config/pulse): Aucun fichier ou dossier de ce type
Jun 19 07:39:01 box systemd[831936]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Jun 19 07:39:01 box systemd[831936]: pulseaudio.service: Failed with result 'exit-code'.
Jun 19 07:39:01 box systemd[831936]: Failed to start Sound Service.
Jun 19 07:39:01 box systemd[831936]: pulseaudio.service: Scheduled restart job, restart counter is at 4.
Jun 19 07:39:01 box pulseaudio[832000]: Failed to create secure directory (/nonexistent/.config/pulse): Aucun fichier ou dossier de ce type
Jun 19 07:39:01 box systemd[831936]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Jun 19 07:39:01 box systemd[831936]: pulseaudio.service: Failed with result 'exit-code'.
Jun 19 07:39:01 box systemd[831936]: Failed to start Sound Service.
Jun 19 07:39:01 box systemd[831936]: pulseaudio.service: Scheduled restart job, restart counter is at 5.
Jun 19 07:39:01 box systemd[831936]: pulseaudio.service: Start request repeated too quickly.
Jun 19 07:39:01 box systemd[831936]: pulseaudio.service: Failed with result 'exit-code'.
Jun 19 07:39:01 box systemd[831936]: Failed to start Sound Service.
Jun 19 07:39:01 box systemd[831936]: pulseaudio.socket: Failed with result 'service-start-limit-hit'.


Et pourtant j'ai du son !

Ces messages d'erreur existent depuis des mois déjÍ . J'ai désinstallé puis
réinstallé pulseaudio plusieurs fois, effacé ~/.config/pulse et aussi
probablement d'autres trucs dont je ne me souviens plus, mais rien y fait
toujours ces mêmes messages d'erreur.

Et pourtant elle tourne (ah non ça c'est quelqu'un d'autre… :))

Je ne vois pas d'o͹ vient ce répertoire /nonexistant/.

Un peu perdu sur ce coup-lÍ .

Une idée?

Bon week-end.

S
  • Partager ce contenu :
Vos réponses Page 1 / 2
Trier par : date / pertinence
steve
Le #26575655
Le 19-06-2021, Í  23:44:44 +0000, Hugues Larrive a écrit :
Bonjour,
Une idée?

Peut-être :
# usermod -a -G pulse-access ton-utilisateur

Merci, mon utilisateur n'était pas dans ce groupe.
J'ai redémarré et il semble que l'erreur ait disparu. A voir.
steve
Le #26575817
Le 20-06-2021, Í  09:22:06 +0200, steve a écrit :
Le 19-06-2021, Í  23:44:44 +0000, Hugues Larrive a écrit :
Bonjour,
Une idée?

Peut-être :
# usermod -a -G pulse-access ton-utilisateur

Merci, mon utilisateur n'était pas dans ce groupe.
J'ai redémarré et il semble que l'erreur ait disparu. A voir.


Finalement l'erreur est de nouveau présente. J'avais aussi ajouter mon
utilisateur au groupe 'pulse' au cas o͹.
Une autre idée ?
Merci
Hugues Larrive
Le #26575858
Le mardi 22 juin 2021 Í  10:27, steve
Le 20-06-2021, Í  09:22:06 +0200, steve a écrit :
Finalement l'erreur est de nouveau présente. J'avais aussi ajouter mon
utilisateur au groupe 'pulse' au cas o͹.
Une autre idée ?
Merci

J'avais vu ça : https://debian-facile.org/viewtopic.php?id)940
en plus des groupes ils parlent de usrmerge...
Je n'ai qu'une seule machine en bullseye que j'ai installé fin mai (debootstrap et mate-desktop).
Le système de son par défaut était pipewire mais je ne suis pas parvenu Í  faire fonctionner le bluetooth avec
donc je l'ai remplacé par pulseaudio et j'ai effectivement les mêmes messages que toi dans mon syslog depuis.
Comme ce système a été installé directement en bullseye, /bin /sbin et /lib sont déjÍ  des liens symboliques donc
installer usrmerge n'aurait pas de sens (et je ne vois pas le rapport).
Dans le post ou il dit qu'il faut installer usrmerge, il donne un `ls -ail` de sa racine et on voit qu'il a bien
des les liens symboliques pour /*bin et /lib* et qu'il a aussi un dossier /nonexistent mais qui n'a pas la même date.
Sur ma bullseye j'ai les mêmes messages que toi dans syslog :
Jun 13 07:35:49 pbp systemd[1]: Started User Manager for UID 65534.
Jun 13 07:35:49 pbp systemd[1]: Started Session c2 of user nobody.
Jun 13 07:35:49 pbp systemd[13384]: Starting Sound Service...
Jun 13 07:35:49 pbp systemd[1]: session-c2.scope: Succeeded.
Jun 13 07:35:49 pbp systemd[1]: Started Session c3 of user nobody.
Jun 13 07:35:50 pbp systemd[1]: session-c3.scope: Succeeded.
Jun 13 07:35:50 pbp systemd[1]: Started Session c4 of user nobody.
Jun 13 07:35:50 pbp pulseaudio[13408]: Failed to create secure directory (/nonexistent/.config/pulse): Aucun fichier ou dossier de ce type
Jun 13 07:35:50 pbp systemd[13384]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Jun 13 07:35:50 pbp systemd[13384]: pulseaudio.service: Failed with result 'exit-code'.
Jun 13 07:35:50 pbp systemd[13384]: Failed to start Sound Service.
Jun 13 07:35:50 pbp systemd[13384]: Reached target Main User Target.
Jun 13 07:35:50 pbp systemd[13384]: Startup finished in 951ms.
Jun 13 07:35:50 pbp systemd[13384]: pulseaudio.service: Scheduled restart job, restart counter is at 1.
Jun 13 07:35:50 pbp systemd[13384]: Stopped Sound Service.
Jun 13 07:35:50 pbp systemd[13384]: Starting Sound Service...
Concernant le fameux dossier /nonexistent (qui n'existe pas sur mes systèmes) :
:~$ grep -r nonexistent /etc/* 2>/dev/null
/etc/passwd:nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
/etc/passwd:_apt:x:100:65534::/nonexistent:/usr/sbin/nologin
/etc/passwd:messagebus:x:104:110::/nonexistent:/usr/sbin/nologin
/etc/passwd:uml-net:x:118:125::/nonexistent:/usr/sbin/nologin
/etc/passwd-:nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
/etc/passwd-:_apt:x:100:65534::/nonexistent:/usr/sbin/nologin
/etc/passwd-:messagebus:x:104:110::/nonexistent:/usr/sbin/nologin
/etc/passwd-:uml-net:x:118:125::/nonexistent:/usr/sbin/nologin
/etc/schroot/setup.d/20copyfiles: fatal "Not copying nonexistent file: $file"
En fait il semble que pulseaudio tente de se lancer pour l'utilisateur nobody.
Sur ma buster qui a une configuration très similaire je n'ai pas ce genre de messages mais,
sur bullseye :
:~$ ps aux | grep pulse
hugues 1151 0.0 0.6 874492 24880 ? S<sl 22:02 0:00 /usr/bin/pulseaudio --daemonize=no --log-target=journal
sur buster :
:~$ ps aux | grep pulse
hugues 1726 0.0 0.0 1132272 15708 ? S<sl juin16 0:10 /usr/bin/pulseaudio --daemonize=no
Cette commande se trouve dans /usr/lib/systemd/user/pulseaudio.service qui fait partie du package pulseaudio.
À mon avis le mieux Í  faire (le plus simple) pour se débarasser de ces messages c'est de créer le dossier /nonexistent avec des permissions similaires Í  /tmp (chmod 1777) afin que tous les utilisateurs dont c'est le dossier personnel puissent y accéder.
Autrement peut-être qu'en configurant pulseaudio en tant que démon système il ne se lancerait plus en mode utilisateur (Í  vérifier).
Ou encore remplacer pulseaudio par pipewire...
Haricophile
Le #26575863
Le Tue, 22 Jun 2021 21:01:46 +0000,
Hugues Larrive
À mon avis le mieux Í  faire (le plus simple) pour se débarasser de
ces messages c'est de créer le dossier /nonexistent avec des
permissions similaires Í  /tmp (chmod 1777) afin que tous les
utilisateurs dont c'est le dossier personnel puissent y accéder.

Le mieux ça serait de voir comment est lancé pulseaudio pour voir
pourquoi il est lancé en nobody qui n'a pas de /home/nobody d'o͹ le
"nonexitent", au lieu d'être lancé sous un user. Sans
rejeter totalement le bug, Í  mon avis c'est dans une config ou
le profil de l'utilisateur (quelque chose qui a changé avec un
changement de version ou autre ?). Créer un dossier nonexitent me
parait comme réparer une tête de robinet qui goutte en mettant une
bassine en dessous, ça élimine les inconvénients mais ne résoud rien.
Si tu lance pulse en root, il va aussi envoyer le "nonexitent" avec
avant "impossible de créer le dossier, permission refusée" (message
plus clair, il n'a pas le droit de créer /root/.config/pulseaudio
Mettre pulse en daemon peut avoir quelques inconvénients (surtout au
début de pulse quand ça plantait tout le temps), mais c'est une
possibilité qui affranchit de la gestion des utilisateurs.
didier gaumet
Le #26575865
Le mardi 22 juin 2021 Í  21:01 +0000, Hugues Larrive a écrit :
[...]
Je n'ai qu'une seule machine en bullseye

[...]
Le système de son par défaut était pipewire

[...]
Sous Buster et Bullseye, Pipewire est disponible mais ne remplace pas
Alsa, Jack et Pulseaudio. On peut contraindre ce fonctionnement mais
c'est déconseillé
https://wiki.debian.org/PipeWire#Using_as_a_substitute_for_PulseAudio.2FJACK.2FALSA
steve
Le #26575867
Le 22-06-2021, Í  21:01:46 +0000, Hugues Larrive a écrit :
Le mardi 22 juin 2021 Í  10:27, steve
Le 20-06-2021, Í  09:22:06 +0200, steve a écrit :
Finalement l'erreur est de nouveau présente. J'avais aussi ajouter mon
utilisateur au groupe 'pulse' au cas o͹.
Une autre idée ?
Merci

À mon avis le mieux Í  faire (le plus simple) pour se débarasser de ces
messages c'est de créer le dossier /nonexistent avec des permissions
similaires Í  /tmp (chmod 1777) afin que tous les utilisateurs dont
c'est le dossier personnel puissent y accéder.

Je vais essayer ça pour voir si ça a un effet. Néanmoins, je suis
d'accord avec Haricophile que ce serait quand même mieux d'identifier la
source du problème et le corriger.
Autrement peut-être qu'en configurant pulseaudio en tant que démon
système il ne se lancerait plus en mode utilisateur (Í  vérifier).

Prochaine étape ?
Ou encore remplacer pulseaudio par pipewire...

Jamais entendu parlé de ce pipewire.
steve
Le #26575868
Il semble qu'avec la création du répertoire /nonexistent, le message
d'erreur ait disparu. Mais maintenant, le système se plaint que ce
pipewire ne soit pas installé:
Jun 23 10:10:34 box xdg-desktop-portal[3121]: could not open /usr/lib/x86_64-linux-gnu/pipewire-0.3: Aucun fichier ou dossier de ce type
Jun 23 10:10:34 box xdg-desktop-portal[3121]: No module "libpipewire-module-session-manager" was found
Je vais l'installer pour voir si ça fait disparaitre le message d'erreur.
Hugues Larrive
Le #26575889
Le mercredi 23 juin 2021 Í  06:39, Haricophile
Le mieux ça serait de voir comment est lancé pulseaudio pour voir
pourquoi il est lancé en nobody qui n'a pas de /home/nobody d'o͹ le
"nonexitent", au lieu d'être lancé sous un user. Sans
rejeter totalement le bug, Í  mon avis c'est dans une config ou
le profil de l'utilisateur (quelque chose qui a changé avec un

Chez moi il semble être lancé par systemd lors de l'exécution des tÍ¢ches cron.daily, et plus particulièrement du script /etc/cron.daily/locate qui contient :
# run find as this user
LOCALUSER="nobody"
Ça lance le script /usr/bin/updatedb.findutils qui fait un `su nobody` ... ce qui provoque :
Jun 23 06:55:12 pbp systemd[1]: Created slice User Slice of UID 65534.
Jun 23 06:55:12 pbp systemd[1]: Starting User Runtime Directory /run/user/65534...
Jun 23 06:55:12 pbp systemd[1]: Finished User Runtime Directory /run/user/65534.
Jun 23 06:55:12 pbp systemd[1]: Starting User Manager for UID 65534...
et une tentative de lancement de pulseaudio.service pour cet utilisateur.
Pour l'UID 1000 pulseaudio se lance normalement.
Pour l'UID 0 ça donne :
Jun 23 07:09:28 pbp systemd[1951]: Condition check resulted in Sound System being skipped.
C'est dÍ» Í  une ligne dans /usr/lib/systemd/user/pulseaudio.service :
ConditionUser=!root
On peut obtenir la même chose pour nobody en ajoutant :
ConditionUser=!nobody
juste en dessous.
Préalablement, pour éviter que ce soit écrasé par une mise Í  jour de pulseaudio :
# dpkg-divert --rename /usr/lib/systemd/user/pulseaudio.service
# cp /usr/lib/systemd/user/pulseaudio.service.distrib /usr/lib/systemd/user/pulseaudio.service
Après je ne sais pas trop Í  qui attribuer ce bug, est-ce que pulseaudio devrait intégrer une condition pour nobody comme pour root ? est-ce que systemd ne devrait pas lancer de "User Manager" pour nobody ? est-ce que c'est le script updatedb.findutils qui fait quelque chose d'incorrect ?
Maintenant que j'ai identifié /etc/cron.daily/locate comme source du problème, je me suis aperçu que locate n'est pas installé sur ma buster, c'est mlocate Í  la place...
Du coup ma solution finale :
# apt-get install mlocate locate-
Comme ça plus besoin de /nonexistant ou de diversion.
steve
Le #26575893
Bonjour Hugues,
Merci pour toutes ces explications mais il y a une chose que je ne
comprends pas vraiment. Qu'est que pulseaudio et updatedb ont Í  voir
ensemble. updatedb sert Í  créer un index des fichiers afin d'accélérer
la recherche avec locate ou mlocate. Qu'est-ce que ça a voir avec
pulseaudio ?
Hugues Larrive
Le #26575895
Le mercredi 23 juin 2021 Í  11:45, steve
Il semble qu'avec la création du répertoire /nonexistent, le message
d'erreur ait disparu. Mais maintenant, le système se plaint que ce
pipewire ne soit pas installé:
Jun 23 10:10:34 box xdg-desktop-portal[3121]: could not open /usr/lib/x86_64-linux-gnu/pipewire-0.3: Aucun fichier ou dossier de ce type
Jun 23 10:10:34 box xdg-desktop-portal[3121]: No module "libpipewire-module-session-manager" was found
Je vais l'installer pour voir si ça fait disparaitre le message d'erreur.

Oui, j'ai vu ça aussi quand j'ai désinstallé pipewire, c'est sans rapport avec l'utilisateur nobody et /nonexistent.
Personnellement j'ai désinstallé aussi xdg-desktop-portal dont je n'ai pas l'utilité.
Poster une réponse
Anonyme