PulseAudio et commande su [Réglé]

choucroot Membre non connecté
-
- Voir le profil du membre choucroot
- Inscrit le : 07/08/2015
- Groupes :
je reprends ici de fil "Linux, sans logiciel espions cachés ? ", car ça concerne uniquement un problème technique.
Toujours dans le but de faire tourner Skype seul dans son coin sans qu'il n'ait accès à mes données personnelles (car au final on ne sait pas ce fait ce soft de M$), j'ai créé un user appelé 'nonfree', groupe 'nonfree', qui n'a pas les droits de lecture sur mon $home
Ainsi depuis ma session, je lance "su nonfree -c skype". Ca fonctionne .... presque ... car je n'ai pas de son. Pareil si je fais "su nonfree -c vlc". Apparemment, c'est la connexion à PulseAudio qui ne fonctionne pas. (Au passage, Skype et vlc fonctionnent normalement si lancés depuis une session KDE de 'nonfree')
[afb@localhost ~]$ su nonfree -c vlc
Mot de passe :
VLC media player 2.2.1 Terry Pratchett (Weatherwax) (revision 2.2.1-0-ga425c42)
[000000000269fd18] pulse audio output error: PulseAudio server connection failure: Connexion refusée
[00000000026e4298] dbus interface error: Failed to connect to the D-Bus session daemon: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
[00000000026e4298] core interface error: no suitable interface module
[00000000025c2118] core libvlc error: interface "dbus,none" initialization failed
[00000000025c2118] core libvlc: Lancement de vlc avec l'interface par défaut. Utilisez « cvlc » pour démarrer VLC sans interface.
libGL error: failed to open drm device: Permission non accordée
libGL error: failed to load driver: i965
Quelqu'un aurait-il une idée pour expliquer ce qui se passe et remédier à ça ?
Ordinateurs : Mageia9 64bits XFCE: MSI Cubi N-8GL-002BEU (Pentium N5000), NUC11ATKPE (Pentium N6005), HP ELITEBOOK 820-G3 (I5-6200U)
Smartphone: /e/OS ( Samsung S7 Edge )
Smartphone: /e/OS ( Samsung S7 Edge )

lebarhon Membre non connecté
-
- Voir le profil du membre lebarhon
- Inscrit le : 09/10/2010
- Groupes :
-
Équipe Mageia
-
Membre d'Honneur
Voici quelques commandes préconisées par la doc pour le dépannage du son
- « ps aux | grep pulseaudio » va vérifier que PulseAudio est en cours d'exécution.
- « pactl stat » va vérifier que vous pouvez vous connecter correctement au démon PulseAudio.
- « pactl list sink-inputs » vous indiquera les programmes jouant actuellement du son via PulseAudio.
- « systemctl status osspd.service » vous indiquera l'état actuel du démon mandataire OSS. Il est utilisé pour activer le son des applications qui utilisent l'API de son OSS. Vous devez installer le paquetage « ossp » si vous avez besoin de cette fonctionnalité.
- « pacmd ls » vous donnera beaucoup d'informations de débogage sur l'état actuel de votre son.
- « lspcidrake -v | grep -i audio » vous dira le pilote de bas niveau que votre carte utilise par défaut.
- « /usr/sbin/lsmod | grep snd » vous permettra de vérifier les modules (pilotes) du noyau relatifs au son qui sont chargés.
- « alsamixer -c 0 » vous donnera un mélangeur textuel pour contrôler le bas niveau ALSA pour la première carte son.
- « /usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp » indiquera les programmes utilisant actuellement la carte son directement (normalement cela devrait afficher uniquement PulseAudio).
- « pactl stat » va vérifier que vous pouvez vous connecter correctement au démon PulseAudio.
- « pactl list sink-inputs » vous indiquera les programmes jouant actuellement du son via PulseAudio.
- « systemctl status osspd.service » vous indiquera l'état actuel du démon mandataire OSS. Il est utilisé pour activer le son des applications qui utilisent l'API de son OSS. Vous devez installer le paquetage « ossp » si vous avez besoin de cette fonctionnalité.
- « pacmd ls » vous donnera beaucoup d'informations de débogage sur l'état actuel de votre son.
- « lspcidrake -v | grep -i audio » vous dira le pilote de bas niveau que votre carte utilise par défaut.
- « /usr/sbin/lsmod | grep snd » vous permettra de vérifier les modules (pilotes) du noyau relatifs au son qui sont chargés.
- « alsamixer -c 0 » vous donnera un mélangeur textuel pour contrôler le bas niveau ALSA pour la première carte son.
- « /usr/sbin/fuser -v /dev/snd/pcm* /dev/dsp » indiquera les programmes utilisant actuellement la carte son directement (normalement cela devrait afficher uniquement PulseAudio).
Essaye de trouver des différences entre l'utilisateur où Pulseaudio fonctionne et "nonfree"
CM Asus Z77-A+i5-2500K+GeForceGT520+RAM8Go
SSD Crucial M4+SSD Samsung EVO
Mageia 6 64 bits
SSD Crucial M4+SSD Samsung EVO
Mageia 6 64 bits

choucroot Membre non connecté
-
- Voir le profil du membre choucroot
- Inscrit le : 07/08/2015
- Groupes :
D'après ce que je vois avec pacmd, pas de démon PulseAudio lorsque je passe en utilisateur 'nonfree'.
Pourtant, les process sont là, même information sous les 2 utilisateurs ...
[afb@localhost ~]$ ps aux | grep pulseaudio
afb 3259 0.2 0.2 375424 10252 ? S<sl 09:56 0:44 /usr/bin/pulseaudio
nonfree 3336 0.0 0.1 276568 6612 ? S<sl 09:56 0:00 /usr/bin/pulseaudio
afb 20592 0.0 0.0 12304 2280 pts/1 S+ 14:24 0:00 grep --color pulseaudio
[afb@localhost ~]$ su -l nonfree
Mot de passe :
[nonfree@localhost ~]$ ps aux | grep pulseaudio
afb 3259 0.2 0.2 375424 10252 ? S<sl 09:56 0:44 /usr/bin/pulseaudio
nonfree 3336 0.0 0.1 276568 6612 ? S<sl 09:56 0:00 /usr/bin/pulseaudio
nonfree 20688 0.0 0.0 12304 2276 pts/1 S+ 14:25 0:00 grep --color pulseaudio
[nonfree@localhost ~]$
[nonfree@localhost ~]$ pacmd ls
Aucun démon PulseAudio en cours d'exécution, ou ne s'exécutant pas dans une session de type démon.
nonfree@localhost ~]$ pactl stat
Échec lors de la connexion : Connexion refusée
Échec de pa_context_connect() : Connexion refusée
[nonfree@localhost ~]$
Une idée ?
Édité par choucroot Le 27/10/2015 à 16h46
Ordinateurs : Mageia9 64bits XFCE: MSI Cubi N-8GL-002BEU (Pentium N5000), NUC11ATKPE (Pentium N6005), HP ELITEBOOK 820-G3 (I5-6200U)
Smartphone: /e/OS ( Samsung S7 Edge )
Smartphone: /e/OS ( Samsung S7 Edge )

choucroot Membre non connecté
-
- Voir le profil du membre choucroot
- Inscrit le : 07/08/2015
- Groupes :
Vu ça dans un bouquin, alors je me suis lancé et j'ai essayé de tracer avec strace et de faire un diff entre les 2 utilisateurs
=> Quand je suis 'nonfree', je vois que ce n'est pas le bon userid sur /run/user/. Il utilise le 1000 alors que je suis 1002 !
[nonfree@localhost ~]$ strace vlc 2>&1 | grep "/run/user"
connect(5, {sa_family=AF_LOCAL, sun_path="/run/user/1000/pulse/native"}, 110) = -1 EACCES (Permission denied)
[nonfree@localhost ~]$ ll /run/user/
total 0
drwx------ 6 afb afb 120 oct. 27 09:56 1000/
drwx------ 6 nonfree nonfree 120 oct. 27 10:46 1002/
[nonfree@localhost ~]$
Pourquoi ne prendrait-il pas la bonne valeur ?
Édité par choucroot Le 27/10/2015 à 16h54
Ordinateurs : Mageia9 64bits XFCE: MSI Cubi N-8GL-002BEU (Pentium N5000), NUC11ATKPE (Pentium N6005), HP ELITEBOOK 820-G3 (I5-6200U)
Smartphone: /e/OS ( Samsung S7 Edge )
Smartphone: /e/OS ( Samsung S7 Edge )

choucroot Membre non connecté
-
- Voir le profil du membre choucroot
- Inscrit le : 07/08/2015
- Groupes :
tant pis pour ce monologue, mais peut-être que ça donnera des idées à d'autres.
J'ai une solution qui fonctionne (sans devoir passerpulseAudio en mode démon):
- ajouter nonfree à mon groupe personnel (afb)
- sur /run/user/1000/pulse/native, dupliquer les droits du user sur le groupe (par défaut, le groupe n'a aucun droits)
=>

Au final, depuis ma session KDE, je peux donc utiliser Skype sans qu'il n'ait accès à mon home !! Top ! En attendant que plus personne n'utilise Skype ... ou qu'il devienne plus ouvert. Bon, dans ce contexte de 'su - nonfree', la webcam ne fonctionne pas, mais ça un autre problème ... ...


Ordinateurs : Mageia9 64bits XFCE: MSI Cubi N-8GL-002BEU (Pentium N5000), NUC11ATKPE (Pentium N6005), HP ELITEBOOK 820-G3 (I5-6200U)
Smartphone: /e/OS ( Samsung S7 Edge )
Smartphone: /e/OS ( Samsung S7 Edge )
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie