Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
"The field ipc_gid must be a valid group (create group audio)"
Dostaję taki komunikat błędu, oznacza brak ważnej grupy audio, nic dziwnego, nie mam plików /etc/groups ani pliku /etc/passwd a nawet jeśli dodam to i tak nic nie zmienia...
Tworzę sb eksperymentalne distro i gdy je uruchamiam to jestem użytkownikiem "root" bez jakiegokolwiek logowania do systemu, czyli powinienem mieć dostęp do wszystkiego ale o dziwo nie mam...
Ten komunikat konkretny wypisuje mi biblioteka libalsa, sterowniki mam wkompilowane w jajko i na dwóch lapkach system mi odczytuje karty dźwiękowe a z "alsamixer" bezpośrednio uruchamia się obsługa karty i oczywiście zapamiętuje ustawienia dźwięku aż do ponownego uruchomienia ale to akurat nie problem, z tym może sb poradzę, bardziej nie rozumiem czemu aplay i wspomniana biblioteka nie odpala mi dźwięku z plików "wav" i wymaga grupy audio...
Nie wiecie może jak pokierować alsę by odpalała dźwięk lub by sztucznie utworzyć grupę "audio"? Albo by root mógł z tej grupy korzystać, po wpisaniu polecenia "groups" dosłownie wypisuje mi "0", czyli brak jakiejkolwiek grupy, może w kernelu da się usunąć obsługę grup i użytkowników bo widzę tam jakieś ptaszki z tym związane lecz nie jestem pewien czy to one...
Jeśli ktoś coś wie to proszę o info bo wiem iż to niestandardowy komunikat i niestandardowa sytuacja, dzienx z góry...
Zmiana uprawnień plików w /dev/snd na 777 nic nie pomaga...
A to wypluwa mi vdir w katalogu /dev/snd, czyli sterowniki są:
crw-------- 1 0 0 116, 2 lip 3 10:43 controlC0
crw-------- 1 0 0 116, 7 lip 3 10:43 hwC0D0
crw-------- 1 0 0 116, 4 lip 3 10:43 pcmC0D0c
crw-------- 1 0 0 116, 3 lip 3 12:30 pcmC0D0p
crw-------- 1 0 0 116, 6 lip 3 10:43 pcmC0D2c
crw-------- 1 0 0 116, 5 lip 3 10:43 pcmC0D2p
crw-------- 1 0 0 116, 1 lip 3 10:43 seq
crw-------- 1 0 0 116, 33 lip 3 10:43 timer
Offline
fenix1991 napisał(-a):
Tworzę sb eksperymentalne distro i gdy je uruchamiam to jestem użytkownikiem "root" bez jakiegokolwiek logowania do systemu, czyli powinienem mieć dostęp do wszystkiego ale o dziwo nie mam...
Wieść gminna niesie, że żeby tworzyć własny system na bazie Linuxa, trzeba mieć elementarne pojęcie o sposobie działania Linuxa...
Jak nie masz /etc/passwd i /etc/group - to znaczy, że mechanizm PAM nie może przydzielać uprawnień, bo nie ma komu ich przydzielić.
Mechanizm PAM odpowiada za uprawnienia w systemach Linux, bez niego nie ma żadnego systemu Linux, ani BSD czy podobnego.
Identyczne mechanizmy oparte na strukturze użytkowników i grup systemowych ma też MS Windows, MacOSX, IOS i Android.
Pozdro
;-)
Offline
O PAM słyszałem, trochę się nim bawiłem i chciałem go wywalić z mojej dystrybucji, nie sądziłem tylko że tak podstawowe operacje jak obsługa dźwięku będzie tego badziewia wymagała, operacje na partycjach i dyskach PAMu nie wymagają gdzie można stracić cenne dane ale głupie odpalenie muzyki już tak, masakra...
Jeśli pisanie do urządzeń w /dev/snd wymaga PAM a usunięcie partycji już nie to coś jest nie tak, co by tu teraz zrobić, hmm, nie mam pomysła...
A chciałem się pozbyć całego tego bardaku z PAM i logowaniami, użytkownikami, grupami i całą resztą wg mnie zbędnych wynalazków, chyba będę jednak musiał postawić PAM i utworzyć tylko konto root ale to i tak sztuczna zabawa, uruchamiam system jako root a potem i tak muszę się logować aby być adminem by odpalić muzyczkę a tym bardziej Waylanda, nie wiem jak z X'ami, co ja teraz pocznę...
Offline
2037
Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:19:59)
Offline
Na Twoim miejscu jednak zamiast się wypłakiwać na forum jakie to masz genialne pomysły na dystrybucję i jaki to badziew mają wszystkie inne (normalnie nikt na ten genialny pomysl nie wpadł) - zrobiłbym to co delikatnie zasuherował Jacekalex, czyli poczytał sobie co nieco dokumentacji.
PAM wcale nie jest konieczny - możesz się autoryzować na fafnaście innych sposobów, jednak /etc/passwd i /etc/group są potrzebne do działania systemu jako takiego (choćby do uzyskania informacji, gdzie to siedzi katalog domowy roota). A moduł autoryzacji do PAMa możesz sobie napisać - choćby taki, ze autoryzuje wszystko co sie rusza - i wtedy możesz robić sobie co chcesz pod warunkiem, że cały systembędzie używał PAM (co wcale nie jest takie oczywiste).
BTW. @Jacekalex- nieco uprościłeś sprawę... wiesz, eufemizm taki...
Offline
Przecie tam w katalogu /dev/ masz uprawnienia do urządzeń.
# ls -al /dev/snd total 0 drwxr-xr-x 3 root root 220 2015-07-04 08:38:56 ./ drwxr-xr-x 21 root root 3.9K 2015-07-04 09:59:36 ../ drwxr-xr-x 2 root root 60 2015-07-04 08:38:56 by-path/ crw-rw----+ 1 root audio 116, 2 2015-07-04 08:38:56 controlC0 crw-rw----+ 1 root audio 116, 6 2015-07-04 08:38:56 hwC0D0 crw-rw----+ 1 root audio 116, 7 2015-07-04 08:38:56 hwC0D3 crw-rw----+ 1 root audio 116, 4 2015-07-04 09:05:49 pcmC0D0c crw-rw----+ 1 root audio 116, 3 2015-07-04 09:09:27 pcmC0D0p crw-rw----+ 1 root audio 116, 5 2015-07-04 09:05:49 pcmC0D3p crw-rw----+ 1 root audio 116, 1 2015-07-04 08:38:52 seq crw-rw----+ 1 root audio 116, 33 2015-07-04 08:38:56 timer
Już wiesz czemu nie możesz odpalać dźwięku? xD Zrób sobie jakiś zabieg z udevem (czy jego też nie masz?) i niech ci przepisze prawa do tych urządzeń na, ja wiem, 777 i problem masz z głowy... W ogóle cały /dev/ sobie tak przepisz, wtedy nie będziesz miał żadnych problemów z prawami do urządzeń. Ciekawe kiedy ktoś ci zrobi jakiś screencast z desktopa i zacznie łapać dźwięk z mika, pomijam oczywiście odczyt klawiatury i myszy. xD Ta twoja dystrybucja jest sponsorowana przez NSA? xD
Offline
uzytkownikubunt dzienx za info ale czy to nie jest przypadkiem serwer/demon dźwięku z Enlightenment?? Coś w stylu "pulseaudio" czy "jack" tyle że w wersji mini, przetestuję różne demony dźwięku, może jakiś nie będzie miał nic wspólnego z alsą i jej bibliotekami ani nie będzie wymagał uwierzytelnień a zarazem będzie korzystał ze sterowników ALSA, się zobaczy... :)
morfik napisałem w pierwszym poście iż zmieniłem prawa dostępu do urządzeń w /dev/snd i tak mi nie pomogło, próbowałem zmienić także użytkowników i grupy do tych urządzeń ale "chown" mi nie pozwolił gdyż nie jestem zalogowany czyli "chown" najprawdopodobniej wylatuje z systemu...
Ale dzięki mimo wszystko gdyż zrozumiałem iż to nie sterowniki i pliki urządzeń mi nie pozwalają na zmiany a sama biblioteka "libalsa" wymusza na mnie konieczność istnienia użytkowników,grup i bycia zalogowanym bo już alsamixer działa normalnie i zapisuje w plikach urządzeń moje ustawienia, więc to nie wina sterowników ani uprawnień a biblioteki czyli serwera alsa na której oparty jest "aplay" którym się bawię, jestem teraz tego pewien... ;)
I nie, nie mam w ogóle udev? :D Zastosowałem inny mechanizm o którym nie będę się rozpisywał...
Nie boję się screencast ani podobnych wynalazków, system będzie zabezpieczony w innym stylu i nie groźne będą mu takie ataki i nie jestem przez nikogo sponsorowany, uczę się Linuchów i się bawię przy okazji tworząc swoje distro...
if (isdigit(*group) == 0) {
long clen = sysconf(_SC_GETGR_R_SIZE_MAX);
size_t len = (clen == -1) ? 1024 : (size_t)clen;
struct group grp, *pgrp;
char *buffer = (char *)malloc(len);
if (buffer == NULL)
return -ENOMEM;
int st = getgrnam_r(group, &grp, buffer, len, &pgrp);
if (st != 0 || !pgrp) {
SNDERR("The field ipc_gid must be a valid group (create group %s)", group);
free(buffer);
return -EINVAL;
}
rec->ipc_gid = pgrp->gr_gid;
free(buffer);
} else {
rec->ipc_gid = strtol(group, &endp, 10);
}
Część kodu z biblioteki libalsa, nie wiem nawet czy jest sens go edytować i czy jest to możliwe, na razie się nie zagłębiałem w to, może zmiana serwera/demona dźwięku z alsa na coś innego co nie wymaga uwierzytelnień pomoże :)
ethanak nie pomagasz tylko krytykujesz, nie zrozumiałeś mnie, nie chcę ŻADNEGO systemu uwierzytelniania, więcej dystansu bo Ci żyłka pęknie i na urodę zaszkodzi? :D
Ostatnio edytowany przez fenix1991 (2015-07-06 13:01:59)
Offline
a) esound ewoluował do dzisiejszego pulseaudio. poza tym mylisz pojęcia systemu (alsa, oss) i demona (esound, pa) - demon korzysta z systemu.
b) jakiś system uwierzytelniania we wszystkich unixopochodnych musisz mieć i od tego się nie odczepisz. nie uważaj się za pępek świata - to, że ktoś ci usiłuje wytłumaczyć jak ten świat działa (przy czym koliduje to z twoim o jego działaniu pojęciem) nie oznacza jeszcze, że ów ktoś nastaje na twoją cześć dziewiczą. i zamiast tupać nóżką mógłbyś uprzejmie ustosunkować się do mojej sugestii.
c) od czytania dokumentacji jeszcze nikt nie umarł
(po namyśle)
d) a co powiesz na oss + pulseaudio w trybie system i auth-anonymous?
Ostatnio edytowany przez ethanak (2015-07-06 13:41:28)
Offline
ethanak to mógłbyś mnie nie atakować, nie wytłumaczysz nikomu że czegoś się nie da zrobić dając mu w ryj bo go tylko zrazisz :)
Co do OSS to myślałem nad nim lecz nie wiem jak tam u niego z dźwiękiem będzie, a co do pulseaudio to widzę że jest dość skomplikowany aczkolwiek w zależnościach nie widzę aby potrzebował ALSA i nie potrzebuje biblioteki libalsa...
Jeśli OSS nie będzie wymagał autoryzacji i programy na nim odpalą muzykę to byłbym gotów się nim pobawić ale jeśli mówisz mi że autoryzacja w systemie MUSI istnieć by system wiedział co jest co i kto jest kim to nie widzę sensu wywalania ALSA,rozumiesz?
Nie wiem dokładnie jak zachodzi proces autoryzacji w Linuchach, nie wiem gdzie i jak do kernela przekazywane są jakieś informacje o użytkownikach i czy w ogóle są, PAM jest zbyt skomplikowany jak na moje potrzeby dlatego chcę go wywalić, a dokumentacji w obcych językach nie mam zbytnio czasu czytać, nie traktuję tego jako pracy tylko hobby i bawię się przy moim systemiku w wolnych chwilach w sumie już jakieś 4 lata...
Offline
fenix1991 napisał(-a):
co do pulseaudio to widzę że jest dość skomplikowany aczkolwiek w zależnościach nie widzę aby potrzebował ALSA i nie potrzebuje biblioteki libalsa...
To może jednak zacznij czytać tę nieszczęsną dokumentację...
Wynik z Raspbiana Wheezy (z Ubuntu 14.04 jest tak samo):
$ apt-cache depends pulseaudio | grep liba Wymaga: libasound2 Wymaga: libasound2-plugins
Co to jest Twoim zdaniem?
Nie wiem dokładnie jak zachodzi proces autoryzacji w Linuchach, nie wiem gdzie i jak do kernela przekazywane są jakieś informacje o użytkownikach i czy w ogóle są,
A co, w swojej dystrybucji masz tylko kernela? Żadnych programów?
Zastanów się jak działa funkcja getpwnam czy getpwuid z glibca.
a dokumentacji w obcych językach nie mam zbytnio czasu czytać,
Oj tam, s/czasu/chęci/ i będzie prawda. To co, my tu mamy czytać za Ciebie i Ci tłumaczyć? Ale przecież to nic nie da, bo Ty i tak wiesz swoje i przetłumaczyć się nawet kijem nie da...
Offline
2042
Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:20:05)
Offline
a dokumentacji w obcych językach nie mam zbytnio czasu czytać,
No to już 95% (czy więcej?) zrozumienia tematu poszło w cholerę. Przecie wszystkie projekty mają dokumentację w EN, wszystkie dokumenty RFC, listy mailingowe, strony projektów, to przecie jest również po angielsku, jak ty chcesz funkcjonować w tym obszarze bez znajomości angielskiego? xD Najgorzej to jest rozruszać te angielską maszynę, ale po roku czy coś, będziesz w stanie czytać książki po eng. Ja póki co jestem w trakcie czytania Practical Packet Analysis i The TCP/IP Guide .Także wiesz, dużo prościej zdobyć wiedzę po angielsku niż po polsku, bo tej tutaj zwyczajnie nie ma, a nawet jeśli jest, to przecie polski już znam, więc i tak czytam to po angielsku w ramach praktyki, poza tym muszę sobie wymowę poprawić, rok temu to dopiero sepleniłem po angielsku, teraz to już prawie jak native speaker. xD
Offline