Connexion

Besoin d'aide ? Une question ? Un avis ? Rejoignez nous sur notre salon IRC pour clavarder

Forum

Système et matériels » Cartes son et périphériques audio [Réglé] PulseAudio et commande su

choucroot Membre non connecté

Rang

Avatar

Inscrit le : 07/08/2015 à 15h21

Localisation : France, Hérault

Messages: 496

Le 27/10/2015 à 10h32
Bonjour,

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 ?



Ordinateur : Mageia7 64bits XFCE / MSI Cubi N-8GL-002BEU ( Pentium N5000 / Intel HD Graphics 605 / SSD M.2 240Go / 4Go DDR4 2400)
Smartphone: /e/ ( > Android 7.1.2) / Samsung S7 Edge
   
lebarhon Membre non connecté

Rang

Avatar

Équipe Mageia Membre d'Honneur

Inscrit le : 09/10/2010 à 14h18

Localisation : Normandie

Messages: 4131

Le 27/10/2015 à 12h24
Bonjour,

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).




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
   
choucroot Membre non connecté

Rang

Avatar

Inscrit le : 07/08/2015 à 15h21

Localisation : France, Hérault

Messages: 496

Le 27/10/2015 à 14h28
Merci.

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 ? Edité par choucroot Le 27/10/2015 à 16h46



Ordinateur : Mageia7 64bits XFCE / MSI Cubi N-8GL-002BEU ( Pentium N5000 / Intel HD Graphics 605 / SSD M.2 240Go / 4Go DDR4 2400)
Smartphone: /e/ ( > Android 7.1.2) / Samsung S7 Edge
   
choucroot Membre non connecté

Rang

Avatar

Inscrit le : 07/08/2015 à 15h21

Localisation : France, Hérault

Messages: 496

Le 27/10/2015 à 16h53
Juste pour préciser,

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 ? Edité par choucroot Le 27/10/2015 à 16h54



Ordinateur : Mageia7 64bits XFCE / MSI Cubi N-8GL-002BEU ( Pentium N5000 / Intel HD Graphics 605 / SSD M.2 240Go / 4Go DDR4 2400)
Smartphone: /e/ ( > Android 7.1.2) / Samsung S7 Edge
   
choucroot Membre non connecté

Rang

Avatar

Inscrit le : 07/08/2015 à 15h21

Localisation : France, Hérault

Messages: 496

Le 29/10/2015 à 10h31
Bon,

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)

=> :D le son fonctionne depuis l'utilisateur nonfree !!

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 ... ...

:super: :magic:



Ordinateur : Mageia7 64bits XFCE / MSI Cubi N-8GL-002BEU ( Pentium N5000 / Intel HD Graphics 605 / SSD M.2 240Go / 4Go DDR4 2400)
Smartphone: /e/ ( > Android 7.1.2) / Samsung S7 Edge
   
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie