Uvodni strana » Linux » HOW-TO Jak psát pravidla pro udev

Jak psát pravidla pro udev

Podle původního textu Daniela Drake

Obsah

  1. O tomto dokumentu
  2. Historie originální verze tohoto dokumentu
  3. Aktuální verze software používaná v době psaní tohoto textu
  4. Terminologie: devfs, sysfs, nodes (uzly), atd.
  5. Proč psát vlastní pravidla? (O smyslu tohoto dokumentu)
  6. Základy pro psaní pravidel
  7. Automatické nastavování parametrů NAME a SYMLINK
  8. Používání regulárních výrazů v klíčích
  9. Základy pro zápis klíčů
  10. Identifikace zařízení podle základních klíčů
  11. Identifikace zařízení podle SYSFS
  12. Použití vícenásobných pravidel pro SYMLINK
  13. Kontrola vlastnictví a práv
    • Příklad: Pravidlo pro mou USB tiskárnu
    • Příklad: Pravidlo pro můj digitální foťák připojovaný přes USB
  14. Dopl?ující poznámky o psaní pravidel pro USB zařízení
    • Příklad: Konvence pravidel pro mou CD mechaniku
    • Příklad: Pravidlo pro připojení palma
    • Příklad: Pravidlo pro pojmenování mého síťového rozhraní
  15. Tipy pro hledání příslušných míst v SYSFS
  16. Ověřování pravidel
  17. Autor a kredity

O tomto dokumentu

udev je určen pro Linuxové jádro řady 2.6 a poskytuje uživatelské řešení pro dynamicky vytvářený adresář /dev, s ustálým názvoslovím. Předchozí řešení přes devfs je dnes již nepodporované a jednoznačně vítězí udev. Svého času byla otázka zda použít devfs či udev hodně diskutovaná, proto pokud vás zajímá něco víc na toto téma, čtěte tento dokument

Historie originální verze tohoto dokumentu

Aktuální verze software používaná v době psaní tohoto textu

Linux kernel 2.6.11
udev 056

Terminologie: devfs, sysfs, přípojné body, atd.

Na typickém linuxovém systému se používá pro umístění přípojných bodů jednotlivých zařízení adresář /dev. Přípojné body se chovají a tváří jako soubory, jsou to však komunikační uzly, přes které může systém komunikovat s připojeným zařízením. Každé zařízení vyžaduje svůj přípojný bod, který by měl (ale nemusí) existovat. Přes tyto uzly pak přistují k hardware uživatelské aplikace. Např. X server "naslouchá" v uzlu /dev/input/mice a na základě informací generovaných pohybem myši mění na monitoru pozici kurzoru.

Původně obsahoval adresář /dev hromadu zařízení - přípojných bodů - pro nejrůznější hardware, který mohl být k systému připojený, takže objem dat tohoto adresáře narůstal v přímé úměře k množství hardware podporovaného linuxem. Prvním pokusem o řešení tohoto problému bylo devfs (devfs vytvářel zařízení pouze pro zařízení nově přidaná do systému), které do určité míry vyhovovalo, nicméně sebou neslo řadu nedostatků, které nebylo jednoduché odstranit.

udev je zcela "novým" řešením tohoto problému, které řeší nedostatky předchozích, a poskytuje jednoduchou a robustní správu zařízení a přípojných bodů. Jejich počet a názvy  v adresáři /dev vychází z toho co je do systému skutečně zapojeno. udev řeší vztah mezi informacemi které poskytuje sysfs na základě pravidel, která vytváří uživatel. Tato dokumentace by měla posloužit jako příručka první pomoci pro psaní takových pravidel, což je v podstatě jediná věc kterou je nucen (eventuálně) uživatel učinit pokud jeho systém některé zařízení ihned nepozná.

sysfs je nový souborový systém, který se vyskytuje v jádrech řady 2.6 Je spravován přímo jádrem a obsahuje základní informace o hardware, který je zrovna zapojen do systému. Tyto informace pak může použít udev pro vytvoření příslušného zařízení - přípojného bodu. sysfs je namountován do adresáře /sys a lze jím procházet. Můžete si tedy předtím, než začnete laškovat s udev prozkoumat některé ze souborů v tomto adresáři. Bude-li v následujícím textu uvedeno /sys nebo SYSFS, pak vězte že je vždy řeč o tomto adresáři.

Proč psát vlastní pravidla? (O smyslu tohoto dokumentu)

Jak už bylo zmíněno výše, psaní pravidel je způsob, jímž může uživatel ovliv?ovat proces správy zařízení. Asi tak, po zapojení fyzického zařízení bude v adresáři /dev existovat odpovídající přípojný bod (např. /dev/sda pro externí disky) stejně tak jak tomu bylo dřív, aniž by tam strašila hromada dalších nepoužívaných přípojných bodů.

udev vám umož?uje cvičit s přípojnými body dle libosti, nicméně existují přinejmenším dva důvody proč to nepřehánět: konvence a zažitá pojmenování.

Takovým příkladem použití udev je zapojení tiskárny. Kdy se po zapnutí vytvoří přípojný bod /dev/printer a také obvyklý /dev/lp0. Nejde přitom jen o konvenci ("printer" není totéž co "lp0"), ale i vztahy pro nečíselná pojmenování. ?ekněme že máte dvě tiskárny - laserovku od HP a inkoustovku Epson. Obě jsou zapojeny a jedna má přípojný bod /dev/lp0 a druhá /dev/lp1. Jak poznáte jaký má každá z nich přidělen přípojný bod? Není to vůbec jednoduché. Tiskárna co byla připojena jako první dostala přiděleno jméno "lp0" a ta druhá "lp1". Pokud je zapojíte v opačném pořadí, bude tomu naopak, což může vyvolávat problém ve skriptech, které očekávají na lp1 vždy tiskárnu od HP.

Pokud však HP tiskárna získá jméno lp_hp (které odpovídá lpX) a Epsonka lp_epson (odpovídající lpY), pak může být ve skriptech vždy odkazováno na tyto jména a žádný problém nevzniká. udev zajišťuje, že je vždy zachováno stálé pojmenování přípojného bodu bez ohledu na to v jakém pořadí a kdy bylo zařízení zapojeno.

Toto stálé pojmenování je obzvlášť užitečné u externích disků (USB klíčenky, šuplíky, foťáky, atp..) neboť vám umož?uje zadávat potřebné parametry pro zapojení do souboru /etc/fstab

Je důležité pochopit, že psaní pravidel je vskutku jednoduché a poskytuje ohromnou pružnost v chování udev. Použití těchto vlastnoručně psaných pravidel nevyvolává  problém ani v případě, že neexistuje žádné pravidlo, které by specifikovalo přípojný bod pro vaše zařízení. udev pak vytvoří přípojný bod ve svém výchozím kořenovém adresáři s tím, že při jeho pojmenování použije název poskytnutý jádrem.

Základy pro psaní pravidel

Než začne udev zapl?ovat adresář /dev tak načte z několika souborů pravidel informace o tom která zařízení má vytvářet a jak je pojmenovávat.

Výchozí soubor pravidel pro udev je obvykle přilinkován jako /etc/udev/rules.d/50-udev.rules Nahlédnutím do tohoto souboru můžete objevit řadu zajímavých informací. Najdete v něm  i několik příkladů pravidel a také několik základních pravidel pro vytvoření základní sady přípojných bodů v adresáři /dev. Nicméně, nepište svá vlastní pravidla přímo sem do tohoto souboru, abyste o ně nepřišli při případné budoucí aktualizaci udev.

Soubory v adresáři /etc/udev/rules.d/ jsou zpracovávány podle abecedy. Udev ukončí zpracovávání sady pravidel pro zařízení ve chvíli kdy se setká s pravidlem které zařízení pro nově nadetekovaný kus hardware pojmenuje. Proto je velmi důležité, aby vaše vlastní pravidla měla přednost před výchozími pravidly pro udev, jinak by totiž vaše vlastní pravidla vůbec neměla efekt! Osobně doporučuji abyste svá vlastní pravidla udržovali v souboru /etc/udev/rules.d/10-local.rules (pokud jej chcete mít umístěný jinde, nahraďte jej symbolickým linkem). Jelikož 10 předchází v abecedě 50, budou vaše pravidla zpracované jako první.

Jak budou vaše pravidla postupně překrývat výchozí pravidla pro udev, která tvoří základní schema zařízení v /dev tak doporučuji, abyste si také nastavili ve svých pravidlech, také názvy a symbolické linky jak je vytvářel devfs. Získáte tím nezbytnou základní sadu zařízení plus vaše vlastní přípojné body.

Pozor! Je důležité aby link na soubor s vašimi pravidly měl příponu .rules bez ní jej totiž bude udev ignorovat!

V souborech pravidel jsou řádky začínající "#" ignorovány a fungují jako komentáře. Každý nezakomentovaný řádek odpovídá pravidlu.

Pravidla jsou tvořena klíči. Klíče jsou odděleny čárkou. Některé klíče se používají pro čtení a sdružování údajů, jiné naopak pro přiřazování údajů a vykonávání akcí.

  1. Poslední identifikační klíč může být poskytován, který bude odpovídat určitému počtu zařízení v systému. Jejich přehled je v následujícím odstavci Identifikace zařízení podle základních klíčů.
  2. Poslední přiřazený klíč může být použitý pro kontrolu jak byl výsledný přípojný bod vytvořen. Obsahuje NAME, SYMLINK, OWNER, GROUP a MODE. Všechny uvedené klíče jsou v tomto dokumentu popsány

Nejběžnější pravidla používají základní identifikační klíče k určení názvu zařízení a pak klíč NAME pro pojmenování přípojného bodu.  udev bude pro jeden kus hardware vytvářet vždy pouze jedno zařízení. Pokud chcete mít více přípojných bodů, pak je musíte nadefinovat pomocí pravidel s klíčem SYMLINK

Tady je pro lepší představu příklad upraveného pravidla:

BUS="usb", SYSFS{serial}="HXOLL0012202323480",
NAME="lp_epson", SYMLINK="printers/epson_stylus"

V tomto případě jsou identifikační klíče BUS a SYSFS{serial}. Klíči které přiřazují údaje NAME a SYMLINK. udev použije toto pravidlo pro zařízení, které je připojeno přes USB rozhraní a má sériové číslo HXOLL0012202323480. Vytvoří pak symbolický link /dev/printers/epson_stylus (adresář printers bude vytvořen automaticky), který bude odkazovat na zařízení /dev/lp_epson. Nyní můžete posílat data k tisku na tiskárnu Epson buď přes /dev/printers/epson_stylus nebo /dev/lp_epson.

Upozornění! Aby fungovalo správně pojmenovávání zařízení, musí být všechny identifikační klíče použité v pravidlech takové, které umí používat udev.

Zapamatujte si: že pravidla která přidáte, nebo pozměníte nebudou mít žádný efekt, dokud je udev nevezme v potaz. Toho dosáhnete tím, že po každé změně spustíte udevstart.

Automatické nastavování parametrů NAME a SYMLINK

Při pojmenovávání zařízení můžete ve vašich pravidlech používat u parametrů NAME a SYMLINK i některé základní operátory. Ti co programují jistě znají nahrazování řetězců. K dispozici je řada operátorů, které lze libovolně spojovat. Např. tento operátor bude nahrazen pořadovým číslem zařízení získaným z jádra:

BUS="usb", SYSFS{vendor}="FUJIFILM",
SYSFS{model}="M100", NAME="camera%n"

Operátor %n bude nahrazen "číslem jádra" odpovídajícím pořadovému číslu připojeného foťáku, takže výslednou hodnotou parametru NAME bude camera0, camera1, atd.

Dalším takovým operátorem je %k. Zastupuje název zařízení, pod kterým ho rozpozná jádro, např. "hda1". Často se můžete setkat s pravidly, které mají parametr NAME="%k", pro získání výchozího názvu zařízení. U vlastních pravidel obvykle využíváme pro pojmenování svých přípojných bodů parametr SYMLINK.

Úplný seznam operátorů, včetně příkladů použití můžete nalézt v manuálu pro udev.

Používání regulárních výrazů v klíčích

Pro větší flexibilitu pravidel, můžete při zápisu klíčů využít nahrazování vzorků tak, jak funguje v shellu. Vezměme následující pravidlo:

KERNEL="ts*",
NAME="input/%k"

Zde je použit operátor *, který zastupuje žádný až libovolný počet znaků. Jinak řečeno:

Vytvoř zařízení, jehož název pod kterým jej zná KERNEL začíná dvojicí znaků "ts", vezmi pak celý jeho název, a pojmenuj tak vytvořený přípojný bod.

Operátor ? se chová podobně, ovšem zastupuje pouze jeden znak (ovšem nikoliv žádný znak).

Také můžete používat hranaté závorky [ ] pro vymezení určitých znaků. V dokumentaci k udev je uvedeno následují:

Například řetězec "tty[SR]" může zastupovat "ttyS" i "ttyR".

Také můžete specifikovat rozsahy. Viz například pravidlo, které se nachází ve výchozí instalaci udev:

KERNEL="fd[0-9]*",
NAME="floppy/%n"

Toto pravidlo říka:

Vytvoř přípojný bod pro zařízení jehož název v jádře začíná znaky "fd", za kterými následuje číslice od nuly do devítky a dále pak již libovolný znak. Tento přípojný bod vytvoř v adresáři floppy, a jako název mu dej pořadové číslo z jádra (%n).

Nahrazování řetězců můžete použít v libovolném klíči, včetně základních klíčů a klíčů založených na sysfs (viz níže pro příklady použití těchto klíčů)

Mám v úmyslu některé z těchto informací odsud vypustit (zvláště použití [ ] operátorů), neboť jsou již mimo rámec dokumentace o psaní pravidel pro udev. Více se o nich můžete dočíst v manuálových stránkách pro udev.

Základy pro zápis klíčů

udev nabízí několik základních metod pro klíče a také nabízí flexibilní způsob pro získávání informací z SYSFS. Typické pravidlo obsahuje oba základní klíče (např. BUS a KERNEL), a pak popřípadě další SYSFS klíče pro jednoznačnou identifikaci různého hardware při použití příslušného přípojného bodu.

Možná si říkáte, "Jak zjistím jaké má sériové číslo mé tiskáry?" nebo "Jak zjistím přesné označení modelu mého foťáku?", ale věřte že psaní pravidel není tak těžké jak by se mohlo zdát. Prakticky všechny informace lze totiž najít v adresáři /sys a sami se můžete rozhodnout které z nich pak použijete ve svých pravidlech.

Identifikace zařízení podle základních klíčů

Viz manuálovou stránku udev pro podrobnější informace o těchto klíčích.

Aktuálně platné klíče jsou:

Klíče ID a PLACE mají svůj sice svůj význam, ale obvykle nejsou v pravidlech používány. Tento dokument se soustřeďuje především na použití klíčů BUS, KERNEL a také  klíčů SYSFS{...} (podrobněji o nich v dalším odstavci). Jak se používají se dozvíte z uvedených příkladů.

Pro opravdu flexibilní použití udev také poskytuje klíče pro volání externích skriptů, testování jejich výsledků a systémových proměnných. Toto však přesahuje rámec tohoto dokumentu. Pro více informací doporučuji číst manuálovou dokumentaci udev.

Identifikace zařízení podle SYSFS

aaaaaa

Použití pravidel pro vícenásobný SYMLINK

Další vychytávkou je možnost psát pravidla, která nemají klíč NAME, ale pouze SYMLINK, což umož?uje efektivně dopl?ovat výchozí pravidla pro udev. Vezměme např. následující pravidlo:

KERNEL="hdc", SYMLINK="dvd"

Když se udev setká s tímto pravidlem, tak si je zaznamená. Když se pak setká s jiným pravidlem, které se vztahuje k témuž zařízení a má nadefinován také klíč NAME, vytvoří přípojný bod pod tímto jménem a zárove? vytvoří i symbolický odkaz na tento přípojný bod  definovaným klíčem SYMLINK v předchozím pravidle.

Tedy jinak řečeno, když udev narazí na zařízení "hdc", tak použije výchozí pravidlo pro vytvoření blokového zařízení, jako obvykle, ale zárove? přidá můj vlastní symbolický odkaz "dvd".

Upozornění! Podobně jako u jiných pravidel, bude i pravidlo tohoto typu realizováno pouze tehdy, pokud ho udev najde dřív než pravidlo ve kterém je nastaven klíč NAME.

Kontrola vlastnictví a práv

Podobně jako spravuje pojmenování nově vytvářených přípojných bodů, udev spravuje i nastavení vlastnictví a přístupových práv k přípojnému bodu.

Které skupině uživatelů bude váš přípojný bod náležet můžete nastavit pomocí klíče GROUP. V následujícím příkladu z výchozího souboru pravidel pro udev je váš framebuffer (fb) přiřazen do skupiny video:

KERNEL="fb[0-9]*", NAME="fb/%n", SYMLINK="%k",
GROUP="video"

Stejně tak můžete přidělit zařízení i konkrétnímu uživateli přes klíč OWNER. V následujícím příkladu je přípojný bod pro disketovku přidělen uživateli "john"

KERNEL="fd[0-9]*", OWNER="john"

Povšiměte si, že v uvedeném pravidle není specifikován žádný klíč NAME nebo SYMLINK. Je to podobně jako při použití vícenásobného symbolického linku, kdy udev převezme požadavek že chceme vytvořit pro uživatele "john" vlastní přípojný bod pro disketovku. a vycházíme z toho, že udev hledá pravidlo pro NAME pro přípojný bod disketovky na základě vlastnictví.

Postavíte-li svá pravidla na základě výše uvedeného příkladu, pak můžete dělat i mnohem oslnivější věci. udev defaultně používá následující pravidlo pro nastavení aby všechny přípojné body pro zvuková zařízení vlastnila skupina "audio":

SUBSYSTEM="sound", GROUP="audio"

Čímž vám odpadá nutnost nastavovat klíč GROUP="audio" u všech dalších následujících pravidel, které pojmenovávají zvuková zařízení

udev defaultně vytváří přípojné body s nastavením přístupových práv na 0666 (vlastník a členové skupiny mohou číst a zapisovat), které je nastaveno proměnnou default_mode v souboru /etc/udev/udev.conf Může vzniknout situace kdy nebudete chtít použít výchozí nastavení práv pro vaše zařízení. Naštěstí můžete toto nastavení práv snadno změnit, když použijete u vlastních pravidel klíč MODE s příslušnou hodnotou, tak jako to můžete vidět v následjícím příkladu pravidla, které povoluje pro přípojný bod "inotify" čtení a zápis každému uživateli:

KERNEL="inotify", NAME="misc/%k", SYMLINK="%k",
MODE="0666"

Příklad: Pravidlo pro mou USB tiskárnu

Po zapojení mé tiskárny, jsem nejprve zkontroloval adresář /sys . Nezískal jsem odsud nic kloudného, ale zaznamenal jsem, že po zapojení tiskárny byl vytvořen přípojný bod /dev/lp0. udevinfo mi pak poskytlo použitelnou cestu:

# udevinfo -q path -n
/dev/lp0
/class/usb/lp0

Po spuštění "udevinfo -a -p /sys/class/usb/lp0" na mne jako obvykle vypadla hromada informací. Proto jsem z nich vytáhnul jen ty, které jsou důležité pro jedinečnou identifikaci zařízení

looking at the device chain at
'/sys/devices/pci0000:00/0000:00:02.1/usb3/3-3':
BUS="usb"
SYSFS{manufacturer}="EPSON"
SYSFS{product}="USB Printer"
SYSFS{serial}="L72010011070626380"

Moje pravidlo pro udev pak vypadá takto:

BUS="usb",
SYSFS{serial}="L72010011070626380", NAME="%k",
SYMLINK="epson_680"

A přípojný bod pro mou tiskárnu existuje jako /dev/lp0 (nebo /dev/lp1 pokud zapojím dříve ještě nějakou jinou tiskárnu) a /dev/epson_680 což je přípojný bod který vždy používám pro připojení této tiskárny.

Příklad: Pravidlo pro digitální foťák připojovaný přes USB

aaaaa

Dopl?ující poznámky k psaní pravidel pro USB zařízení

Carl Streeter, vlastník velkého USB hard disku, napsal a vyzkoušel že podobně jako u mého digitálního foťáku lze použít pro připojení tohoto disku zařízení /dev/sda. Z toho usoudil, že nástroje jako fdisk, nebo hdparm je třeba spoštět na tento přípojný bod. Carlovo pravidlo:

BUS="usb", KERNEL="sd*", SYSFS{product}="USB 2.0 Storage Device", NAME="%k", SYMLINK="usbhd%n"

Toto pravidlo pak vytvoří následující symbolické odkazy:

Souhlasí-li závislost na situaci a dotazovaném zařízení, jsou pro oba případy kdy chceme i nechceme neúpřipojitelný přípojný bod /dev/sda. Použijte nastavení, které se vám zdá lepší.

Jinou trochu odlišnou situací je když máte např. čtečku paměťových karet s více sloty. Tento typ zařízení  standardně neinformuje  o vložení nebo vyjmutí nové party dovnitř nebo ven. Tento problém se vztahuje také na další USB disky, např. když vytvoříte nový diskový oddíl, tak nový přípojný bod nebude  v systému, dokud zařízení neodpojíte a znovu připojíte.

udev nabízí řešení - je to příkaz kterým vytvoříte přípojné body pro všechny diskové oddíly, které jsou na blokovém zařízení k dispozici. Pro každé pravidlo, které nastavíte pak bude mít blokové zařízení vytvořených všech 16 diskových oddílů. Pokud to chcete nějak omezit, pak stačí jen mírně modifikovat klíč NAME, tak jak vidíte níže:

BUS="usb", KERNEL="sd*", SYSFS{product}="USB 2.0 Storage
Device", NAME{all_partitions}="%k", SYMLINK="usbhd%n"

Nyní budete mít k dispozici přípojné body: usbhd,  usbhd1, usbhd3,...,usbhd15

Příklad: Konvence pravidel pro mou CD mechaniku

Mám ve svém PC dvě optické mechaniky - DVD čtečku a CD vypalovačku. DVD mechaniku mám připojenou na hdc a CDRW na hdd. Tyto pozice nelze změnit, aniž by bylo nutné lézt do bedny a přehodit kable, nicméně někteří lidé (včetně mne) raději používají jako přípojné body /dev/dvd a /dev/cdrw. Protože my známe hodnoty "hdX" pro výše uvedené mechaniky, je napsání pravidla velmi jednoduché. Níže uvedený příklad hovoří sám za sebe:

BUS="ide", KERNEL="hdc", NAME="%k", SYMLINK="dvd
cdroms/cdrom%n"
BUS="ide", KERNEL="hdc", NAME="%k", SYMLINK="dvd cdroms/cdrom%n"

Možná jste si všimli, že výchozí soubor 50-udev.rules obsahuje pravidlo, které spouští skript generující názvy pro tato bloková zařízení. Nemě?te ho, neboť vaše vlastní pravidlo se bude nalézat v souboru, jehož zpracování proběhne dříve, takže pravidlo ve výchozím souboru již bude udev ignorovat.

Příklad: Pravidlo pro připojení Palma

Tato zařízení pracují jako normální USB zařízení, takže vám v podstatě stačí jen získat uzel ttyUSB1. Většina nástrojů pro palma se odkazuje na zařízení /dev/pal, takže potřebujete pravidlo k jeho vytvoření. To udělá např. následující pravidlo:
BUS="usb",
SYSFS{product}="Palm Handheld", KERNEL="ttyUSB*",
SYMLINK="pilot"

Toto pravidlo konkrétně bylo uveřejněno na blogu Carstena Clasohma. Pokud k němu budete chtít přidat i klíče pro nastavení vlastníka a přístupových práv, viz výše.

Příklad: Pravidlo pro pojmenování mého síťového rozhraní

Velize zajímavou věcí poslední verze udev je schopnost přejmenovat vaše síťové zařízení, podobně jako to dělá utilita nameif. Síťová rozhraní  se v adresáři /dev nezobrazují, ale  lze na ně odkazovat podle názvu (např. u ifconfig)

Tipy pro hledání příslušných míst v SYSFS

Určitě existuje mnohem více tipů podle specifických zařízení, které by zde bylo možno uveřejnit. Pokud nějaký takový máte, tak mi jej prosím zašlete.

Ověřování pravidel

Máte-li napsaná pravidla, nezapoměli jste spustit udevstart, a přesto se nedostavil očekávaný efekt, pak vám nezbývá než je zkusit prověřit.

Soubor /etc/udev/udev.conf obsahuje volbu udev_log. Nastavíte-li tuto volbu na yes, pak udev bude logovat některé užitečné informace o tom jak jsou v příslušných uzlech pravidla aplikována. Tyto informace jsou vkládány do souboru /var/log/messages, který je přístupný většině uživatelů.

Navíc, pokud znáte cestu v sysfs k uzlu který chcete vytvořit, pak můžete použít udevtest a ověřit si co bude udev chtít s tímto uzlem dělat. Například:

# udevtest /sys/class/sound/dsp/
version 056
looking at '/class/sound/dsp/'
opened class_dev->name='dsp'
configured rule in '/etc/udev/rules.d/50-udev.rules[132]' applied, added symlink '%k'
configured rule in '/etc/udev/rules.d/50-udev.rules[132]' applied, 'dsp' becomes 'sound/%k'
creating device node '/dev/sound/dsp', major = '14', minor = '3', mode = '0660', uid = '0', gid = '18'

udevtest je nástroj určený pouze k testování, takže sám o sobě žádný uzel pro zařízení nevytváří!

Autor a kredity

Originál tohoto dokumentu sepsal Daniel Drake
Přeložil Keny Otter

Copyright (c) 2003-2005 Daniel Drake
Tento dokument je licencován pod GNU GPL licencí, verze2
Nahoru
Vložil(a): Keny dne 2005-06-10 09:23:37
Poslední změna: Aleš Kapica dne 2005-06-10 12:55:51
Schválil(a): Aleš Kapica