Skocz do zawartości

Brak Dźwięku Dla Użytkowników Bez Praw Roota


mateoeo

Rekomendowane odpowiedzi

Aby uzyskać/odzyskać dostęp do dźwięku dla użytkowników bez praw administratora (dotyczy systemów z KDE):

 

1. Sprawdzamy czy urządzenie działa poprawnie a problemem jest tylko kwestia uprawnień:

$ su - 
$ alsamixer

Jeżeli mamy prawo jako root zmieniać poziom głośności możemy podejrzewać że wszystko gra.

 

2. Sprawdzamy prawa dostępu do urządzeń:

$ ls -l /dev/snd/

W pierwszej kolumnie powinniśmy zobaczyć:

crw-------

a chcielibyśmy:

crw-rw-rw-

Samo chmod niestety nam jednak nie pomoże. Dostęp niby uzyskamy, jednak wymagany będzie restart serwera dźwięku a dodatkowo po wylogowaniu się prawa zmienione zostaną z powrotem.

 

3. Konfiguracja PAM-u (sic!).

 

Rozwiązaniem jest zmiana ustawień PAM-u, a dokładniej modułu pam-console. Jest to moduł odpowiedzialny za zarządzanie dostępem do urządzeń. Moduł jest ustawiony dla kdm, możemy sprawdzić ustawienia poleceniem:

$ cat /etc/pam.d/kdm|grep pam_console
session    optional    pam_console.so

linijka mówi nam tyle, że moduł ten jest aktywny na czas trwania sesji (po zalogowaniu się, do wylogowania się włącznie), ale jest opcjonalny, tzn. nie ma wpływu na proces autentykacji użytkownika. Usuwanie bądź zakomentowanie linii rozwiąże problem dźwięku, nie jest jednak rozwiązaniem dobrym, musimy pamiętać, że moduł ten odpowiada za dostęp do urządzeń.

 

4. Konfiguracja modułu pam_console

 

Moduł pam_console w momencie wylogowania się użytkownika (w kdm) przywraca urządzeniom prawa dostępu z plików konfiguracyjnych. Pliki te znajdują się w katalogu:

/etc/security/console.perms.d/

Domyślnie w katalogu znajduje się plik

50-default.perms

 

Moglibyśmy go wyedytować odpowiednio. Nie jest to jednak wskazane. Aby nadpisać te ustawienia tworzymy plik XX-default.perms, gdzie XX jest liczbą dwucyfrową większą od 50.

$ vi /etc/security/console.perms.d/51-default.perms

i wpisujemy w nim:

#Określamy grupę urządzeń i przypisujemy jej nazwę sound
<sound>=/dev/dsp* /dev/snd/*

#Określamy domyślne prawa dostępu do urządzeń grupy sound
<console> 0666 <sound> 0600 root

5. Uruchamiamy komputer ponownie i sprawdzamy czy mamy prawa (z poziomu użytkownika):

$ alsamixer

$ ls -l /dev/snd/

Jeżeli wszystko OK, odpalamy amaroka i zapuszczamy jakąś tryumfalną muzykę, polecam temat z piratów z karaibów.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...