abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 15:33 | Nová verze

    Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.8.

    Ladislav Hagara | Komentářů: 2
    včera 14:22 | IT novinky

    Herní studio Hangar 13 vydalo novou Mafii. Mafia: Domovina je zasazena do krutého sicilského podsvětí na začátku 20. století. Na ProtonDB je zatím bez záznamu.

    Ladislav Hagara | Komentářů: 0
    včera 13:22 | IT novinky

    Operátor O2 má opět problémy. Jako omluvu za pondělní zhoršenou dostupnost služeb dal všem zákazníkům poukaz v hodnotě 300 Kč na nákup telefonu nebo příslušenství.

    Ladislav Hagara | Komentářů: 5
    včera 05:55 | IT novinky

    Společnost OpenAI představila GPT-5 (YouTube).

    Ladislav Hagara | Komentářů: 0
    včera 05:00 | Nová verze

    Byla vydána (𝕏) červencová aktualizace aneb nová verze 1.103 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.103 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    7.8. 17:33 | IT novinky

    Americký prezident Donald Trump vyzval nového generálního ředitele firmy na výrobu čipů Intel, aby odstoupil. Prezident to zdůvodnil vazbami nového šéfa Lip-Bu Tana na čínské firmy.

    Ladislav Hagara | Komentářů: 8
    7.8. 16:55 | Nová verze

    Bylo vydáno Ubuntu 24.04.3 LTS, tj. třetí opravné vydání Ubuntu 24.04 LTS s kódovým názvem Noble Numbat. Přehled novinek a oprav na Discourse.

    Ladislav Hagara | Komentářů: 0
    7.8. 16:44 | Nová verze

    Byla vydána verze 1.89.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    7.8. 12:22 | IT novinky

    Americká technologická společnost Apple uskuteční v USA další investice ve výši sta miliard dolarů (2,1 bilionu korun). Oznámil to ve středu šéf firmy Tim Cook při setkání v Bílém domě s americkým prezidentem Donaldem Trumpem. Trump zároveň oznámil záměr zavést stoprocentní clo na polovodiče z dovozu.

    Ladislav Hagara | Komentářů: 5
    7.8. 04:55 | Nová verze

    Zálohovací server Proxmox Backup Server byl vydán v nové stabilní verzi 4.0. Založen je na Debianu 13 Trixie.

    Ladislav Hagara | Komentářů: 0
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (46%)
     (21%)
     (4%)
     (5%)
     (3%)
     (1%)
     (1%)
     (18%)
    Celkem 310 hlasů
     Komentářů: 23, poslední 4.8. 13:01
    Rozcestník

    Mini-HOWTO: psaní UDEV pravidel.

    4.1.2008 16:28 | Přečteno: 3611× | Linux | Výběrový blog | poslední úprava: 4.1.2008 19:00

    Jak jsem se mohl v poslední době párkrát přesvědčit, spousta linuxových uživatelů sice ví, co to je UDEV; ten však na první pohled zřejmě působí příliš krypticky (třeba narozdíl od jiných „konfiguráků“), takže je pro mnohé těžké do něj proniknout. Přiznám se, že jsem byl donedávna ve stejné situaci. Pak jsem ale byl donucen pár pravidel napsat a zjistil, jak je to vše vlastně poměrně jednoduché. Takže přináším malý „manuálník“ - ovšem bez zbytečného vysvětlování a bez jakéhokoliv nároku na úplnost. Kdo chce podrobnější návod, či dokumentaci, ten jistě něco najde.


    (UPDATE: upraveno podle připomínek z diskuze a mírně rozšířeno...)

    co je UDEV

    Stručně: systém (v uživatelském prostoru), umožňující nastavit, jak se která systémová zařízení budou v /dev (či jinde) jmenovat, jaká budou mít přístupová práva, případně, jaké akce se mají při jejich přidání do systému provést.

    obecně

    Pravidla UDEV zpravidla nalezneme v /etc/udev/rules.d/. Syntaxe: co řádek, to pravidlo; pravidlo: několik výrazů oddělených čárkou. Výraz může buď a) rozhodovat o tom, k jakému jadernému objektu se pravidlo bude vztahovat, nebo b) říkat, co má být s objektem provedeno.

    a) výběr

    Základní syntaxe: PARAMETR=="hodnota", případně PARAMETR!="hodnota" (jako v c-čku). Parametry:

    b) „akce“

    Syntaxe, buď: AKCE="hodnota", AKCE+="hodnota", nebo AKCE:="hodnota". Jejich význam: Jednotlivé akce:

    syntax "hodnot"


    příklady

    (Doporučuji též projít /dev/udev/rules.d/.)
    # nebude se jmenovat "ttyS4", ale "ttyModem2"
    KERNEL=="ttyS4", NAME="ttyModem2"
    
    # na sériový port přes USB, který odpovídá VID/PID 0x1234/0x5678 bude vytvořen symlink "/dev/modem"
    KERNEL=="ttyUSB*", SYSFS{idVendor}=="0x1234", SYSFS{idProduct}=="0x5678", SYMLINK+="/dev/modem"
    
    # po připojení usb hodin nastavíme přístup skupině "io" a spustíme program, který hodiny sesynchronizuje (reálný příklad ;)
    SYSFS{idVendor}=="16c0",SYSFS{idProduct}=="05dc",SYSFS{manufacturer}=="butrus@evangnet.cz",SYSFS{product}=="UsbClock", MODE="0660",GROUP="io",RUN+="/usr/bin/led-usb-clock synchro"
    
    # pokud vložíme 1G flash "Kingston" / "DataTraveler xyz", spustit na ni automaticky zalohu
    ACTION=="add", SYSFS{vendor}=="Kingston", SYSFS{model}=="DataTraveler xyz", SYSFS{size}=="1001472", SYMLINK+="/dev/kingston_zaloha", RUN+="/local/bin/kingston_zaloha.sh"
    
    
           

    Hodnocení: 94 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    Ondřej Kuda avatar 4.1.2008 16:32 Ondřej Kuda | skóre: 27 | blog: obcasny_blog
    Rozbalit Rozbalit vše Re: Mini-HOWTO: psaní UDEV pravidel.
    Vyborny zapis, moc diky. Uz delsi dobu se odhodlavam k pravidlu pro fotak. Btw je tu uz clanek o pravidlech udevu? Jinak toto by byl vhodny kandidat.
    6.1.2008 12:45 Murry | skóre: 16 | Brno
    Rozbalit Rozbalit vše Re: Mini-HOWTO: psaní UDEV pravidel.
    Toto by mě také zajímalo...
    PS: Neexistuje nějaký démon, který by automaticky připojil nakýkovil foťák?
    Některé distra to dělají automaticky, některé ne-e....
    6.1.2008 12:51 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Mini-HOWTO: psaní UDEV pravidel.
    Zkuste se podívat na ivman.
    6.1.2008 17:47 Murry | skóre: 16 | Brno
    Rozbalit Rozbalit vše Re: Mini-HOWTO: psaní UDEV pravidel.
    Díky moc. Já používám dbus, hal, ..... ale o tomto jsem ani nevěděl.
    Už se kompiluje........:)
    4.1.2008 16:54 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Mini-HOWTO: psaní UDEV pravidel.

    Jen bych doplnil pár věcí, které je dobré vědět, než člověk začne:

    Co s čím porovnávat, se nejlépe zjistí pomocí udevinfo, např.

      udevinfo -a -n /dev/sdb
      udevinfo -a -p /class/net/eth0
    

    Ve druhém případě se zadává tzv. devpath, tj. vlastně cesta v sysfs filesystému (bez počátečního /sys). Je ale nutné kombinovat hodnoty "ze stejné sekce".

    Stejnému klíči může být přiřazeno postupně několik hodnot, platí poslední (pravidla se zpracovávají postupně, jednotlivé soubory podle abecedy). Výjimkou je NAME, přiřazení jména je vždy finální, tj. jakmile ho jednou nastavíme, další pravidla už ho nezmění. Stejného chování lze u ostatních klíčů docílit použitím operátoru ':=' místo normálního '='.

    PROGRAM nelze přímo použít jako akci, místo toho lze použít např. NAME="%c" (substituuje se výstup příkazu volaného pomocí PROGRAM).

    Pozor na akci RUN, zpracování probíhá sériově, takže dokud příkaz neskončí, nezpracovávají se další pravidla ani události.

    Z dokumentace bych doporučil zejména udev(7) a Writing udev Rules. Ten článek je sice lépe srozumitelný, ale v mnoha bodech zastaralý, doporučuji proto konzultovat detaily s tou manuálovou stránkou.

    4.1.2008 16:55 filo | skóre: 22 | blog: FiloBlog | Ostrava
    Rozbalit Rozbalit vše Re: Mini-HOWTO: psaní UDEV pravidel.
    Děkuju za článek, měl bych jeden začátečnický dotaz: nepravidelně se mi v distru po vložení nepřimountují různá USB zařízení (čtečky, klíčenky), dalo by se toto vyřešit právě přes UDEV ?
    4.1.2008 17:00 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Mini-HOWTO: psaní UDEV pravidel.
    Automatické mountování se sice dá řešit přes udev, ale není to příliš vhodné. Většinou se o to starají vyšší vrstvy, např. nějaký démon, který je součástí desktopového prostředí. Ale podle toho, zda udev vytvořil příslušná bloková zařízení, můžete poznat, jestli je problém v nich nebo někde hlouběji (např. v jádře).
    4.1.2008 17:05 filo | skóre: 22 | blog: FiloBlog | Ostrava
    Rozbalit Rozbalit vše Re: Mini-HOWTO: psaní UDEV pravidel.
    Díky za info, mrknu na to. Znát příčinu taky není k zahození.
    David Watzke avatar 5.1.2008 01:01 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Mini-HOWTO: psaní UDEV pravidel.
    Automatické mountování se sice dá řešit přes udev, ale není to příliš vhodné.
    Proč? Jednou jsem to zkoušel a nešlo to. Resp. připojilo to mechaniku jen jednou, pokud vevnitř bylo při spuštění udevstart nějaký médium.
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    5.1.2008 01:10 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Mini-HOWTO: psaní UDEV pravidel.
    Hlavně kvůli té serializaci při zpracování událostí a jednotlivých pravidel.
    4.1.2008 17:03 filo | skóre: 22 | blog: FiloBlog | Ostrava
    Rozbalit Rozbalit vše Re: Mini-HOWTO: psaní UDEV pravidel.
    Joj, stačilo by přijít o 5 minut později a nemusel jsem se ptát ;)
    To Michal Kubeček: díky za odkaz v příspěvku výše, to by mohlo být pro mě to pravé ořechové.
    4.1.2008 17:11 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Mini-HOWTO: psaní UDEV pravidel.
    Na ten článek pozor, je trochu staršího data, takže některé věci lze dnes řešit jednodušeji a syntaxe se v některých bodech trochu změnila. Ale pro pochopení principů je pořád výborný.
    4.1.2008 17:15 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Mini-HOWTO: psaní UDEV pravidel.
    Ještě jedna praktická poznámka. udev používá inotify, takže se o změnách v souborech s pravidly dozví okamžitě a vezme je ihned na vědomí, není potřeba ho restartovat nebo mu posílat nějaký signál. Změna pravidel se ale dotkne pouze po ní následujících událostí (přidání/odebrání zařízení), ne těch, která už v systému jsou. Aplikaci nových pravidel na ně je možné vynutit příkazem udevtrigger.
    4.1.2008 20:44 miso | skóre: 36 | blog: iSCSI_initiator_howto | Praha
    Rozbalit Rozbalit vše Re: Mini-HOWTO: psaní UDEV pravidel.
    Sorry, ze len strucne a bez prikladov, ale na sledovanie udalosti udevu sa pouziva udevmonitor a pri vytvoreni/zeditovani nejakeho pravidla mozme otestovat akciu pomocou udevtest
    Project Satan infects Calculon with Werecar virus
    pools avatar 8.1.2008 21:43 pools | skóre: 19 | blog: Svědek Damdogův | Opava/Praha
    Rozbalit Rozbalit vše Re: Mini-HOWTO: psaní UDEV pravidel.
    Díky za článeček. Moc mi pomohl, ale měl bych jeden dotaz - proč v tomhle:

    ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="8704", GROUP="lp", MODE="0777"

    ignoruje to Group? Připojí to takhle:
    crwxrwxrwx 1 root plugdev 189, 258 2008-01-08 21:35 /dev/bus/usb/003/003

    Když měním MODE tak se to opravdu změní, takže tuhle část neignoruje...
    Vivre libre ou mourir!
    Petr Tomášek avatar 13.1.2008 22:50 Petr Tomášek | skóre: 39 | blog: Vejšplechty
    Rozbalit Rozbalit vše Re: Mini-HOWTO: psaní UDEV pravidel.
    Nevím, jediné, co mě napadá, že to změní jiné pravidlo...
    multicult.fm | monokultura je zlo | welcome refugees!
    13.1.2008 23:07 m_ax
    Rozbalit Rozbalit vše Re: Mini-HOWTO: psaní UDEV pravidel.
    Skus tam pridat OPTIONS="last_rule" a uvidis... m_ax

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.