vbali blogja

just a geek with a blog

Gentoo - udev jogosultágok

Még a 2005.0-ás buildből telepítettem a Gentoo Linuxot a notebookomra. Azóta rendszeresen – kb. hetente, kéthetente egyszer – futtatok egy

emerge --sync
emerge -uD world

párost a rendszer naprakészen tartása végett. Ezt természetesen manuálisan teszem mert szeretem tudni, hogy mely csomagok fognak frissülni, azokban mi a változás és az esetleges fordítási vagy konfigurációs hibákat úgyis csak manuálisan lehet kiküszöbölni.

Valamikor – sajnos már nem emlékszem pontosan – mikor az sys-fs/udev frissítésre került a /dev alatt megbolondultak a jogosultságok. Pl.:

crw-------  1 root audio 14,  4 May  6 09:39 dsp

Mint látható a dsp tulajdonosa a root, csoportja az audio de a csoportnak nincs semmilyen jogosultsága! Így egy mezei user aki benne van az audio groupban nem tudja elérni ezt az erőforrást így a jelen példából kiindulva nem tud például zenét hallgatni. De ez a teljes /dev könyvtár tartalmára értendő, hogy csak a tulajdonosnak van jogosultsága.

Ha ezeken az állományokon módosítom a jogosultságot egy chmod-al az sajnos nem megoldás, mert a /dev egy un. pszeudo fájlrendszer ami a rendszer bootolásakkor jön létre így a chmod-os módosítások az első újraindítás alkalmával elvesznek.

A probléma elhárítására találtam egy egyszerű megoldást. A /etc/udev/50-udev.rules állományban módosítottam azokat a sorokat, ahol az egyes eszközcsoportoknál jogosultágot kívántam kiosztani a csoport részére is. Például a block típusú eszközök esetén:

SUBSYSTEM=="block", GROUP="disk", MODE="0660"

vagy az audio eszközöknél:

SUBSYSTEM=="sound", GROUP="audio", MODE="0660"

A megoldásom tehát csupán annyiból áll, hogy a MODE=“0660”-t odabiggyesztettem a sorok végére.

A dolog további érdekessége, hogy ez a jelenség nem mutatkozik mindenkinél. Egy szintén Gentoo-t használó kollégámnak például nem volt ilyen gondja frissítés után de mondjuk a Gentoo Forum tele van ehhez hasonló bejegyzésekkel.