abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 01:00 | Nová verze

    Byla vydána nová verze 24.04.28 s kódovým názvem Time After Time svobodného multiplatformního video editoru Shotcut (Wikipedie) a nová verze 7.24.0 souvisejícího frameworku MLT Multimedia Framework. Nejnovější Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    včera 16:33 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 03:22 | Zajímavý článek

    V aktuálním příspěvku na blogu počítačové hry Factorio (Wikipedie) se vývojář s přezývkou raiguard rozepsal o podpoře Linuxu. Rozebírá problémy a výzvy jako přechod linuxových distribucí z X11 na Wayland, dekorace oken na straně klienta a GNOME, změna velikosti okna ve správci oken Sway, …

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

    Rakudo (Wikipedie), tj. překladač programovacího jazyka Raku (Wikipedie), byl vydán ve verzi #171 (2024.04). Programovací jazyk Raku byl dříve znám pod názvem Perl 6.

    Ladislav Hagara | Komentářů: 5
    27.4. 17:44 | Nová verze

    Společnost Epic Games vydala verzi 5.4 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    26.4. 17:11 | Nová verze

    Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.

    Ladislav Hagara | Komentářů: 12
    26.4. 13:33 | Nová verze

    Vyšlo Pharo 12.0, programovací jazyk a vývojové prostředí s řadou pokročilých vlastností. Krom tradiční nadílky oprav přináší nový systém správy ladících bodů, nový způsob definice tříd, prostor pro objekty, které nemusí procházet GC a mnoho dalšího.

    Pavel Křivánek | Komentářů: 9
    26.4. 04:55 | Zajímavý software

    Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.

    Ladislav Hagara | Komentářů: 45
    25.4. 17:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.

    Ladislav Hagara | Komentářů: 14
    25.4. 14:22 | Komunita

    Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.

    Ladislav Hagara | Komentářů: 3
    KDE Plasma 6
     (75%)
     (8%)
     (2%)
     (15%)
    Celkem 876 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: Udev a RUN - spustit až udev skončí

    16.3.2008 10:30 Smajchl | skóre: 39 | blog: Drzy_Nazory | Praha
    Udev a RUN - spustit až udev skončí
    Přečteno: 551×
    Ahoj lidi, potřeboval bych spustit udevem skript, když nastane nějaká událost, má to ale háček.

    Chci, aby při připojení USB bluetooth skript nahodil wifi (jsou na stejném tlačítku), ale ve chvíli, kdy se spustí skript (parametrem RUN), příkazy iwconfig, nebo lspci nevrátí žádný řetězec :-(

    Dá se nějak zařídit, že se skript spustí, až udev dokončí svou práci? Zkoušel jsem do skriptu dát sleep, ale to udev nepokračuje a čeká na ten sleep :-(

    Obecně jsem tlačítko řešil tady v diskuzi.

    Díky za rady.
    My máme všechno co chcem, my máme dobrou náladu!

    Odpovědi

    16.3.2008 23:57 Tomas
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí

    A nešlo by tu udev událost zahákovat na objevení toho WiFi? Napsal jsem kdysi takový prográmek co názorně zobrazoval jaké lze v udev zahákovat zařízení. ( BTW: Ukázka toho, co lze v Tcl/Tk udělat na 80 řádcích.)

    17.3.2008 02:27 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí
    Používat pro tyto účely udev není příliš šťastné, už vzhledem k tomu, co se píše v dokumentaci o akci RUN. Nešlo by využít HAL a např. ivman?
    17.3.2008 10:24 Smajchl | skóre: 39 | blog: Drzy_Nazory | Praha
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí
    Já nevim jak, když mi poradíš, budu ti vděčný.
    My máme všechno co chcem, my máme dobrou náladu!
    17.3.2008 14:12 Radek Hladik | skóre: 20
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí
    Kdysi s iPAQem jsem to resil velice cunacky nejak takhle:
    RUN=script1
    
    script1:
    script2 &
    
    script2:
    sleep 20
    pracuj s iPAQem
    
    Je to opravdu ohavne, stydim se za to, ale zas to trvalo 2 minuty napsat :-)
    18.3.2008 20:12 Smajchl | skóre: 39 | blog: Drzy_Nazory | Praha
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí
    Díky za odpověď, bohužel ani toto nefunguje, iwlist vrací prázdný řetězec i po 30ti sekundách. Možná to je na iPAQu jinak.

    Nějaké další nápady??
    My máme všechno co chcem, my máme dobrou náladu!
    19.3.2008 23:37 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí
    20.3.2008 08:13 Smajchl | skóre: 39 | blog: Drzy_Nazory | Praha
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí
    pokud zadám iwconfig v konzoli, tak vypisuje pořád to samý, ať je wifi zaplá nebo vyplá.

    Když udevem (i s tim, že poběží skript na pozadí) spustim iwlist, iwconfig,lspci... (a výstup přesměruju někam), tak se tam objeví jen prázdná řádka. A já potřebuju otestovat, jestli je síť k dispozici a jestli má smysl se na ní vůbec připojovat a k tomu potřebuju iwlist.
    My máme všechno co chcem, my máme dobrou náladu!
    20.3.2008 14:37 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí
    Pod udevem vám libovolný z příkazů iwlist, iwconfig nebo dokonce lspci vrací prázadný řádek?

    To je velmi divné. Jste si jistý, že nemáte ve skriptu chybu? Nevidím jediný důvod, proč by lspci spuštěné z udevu nemělo fungovat.
    21.3.2008 10:06 Smajchl | skóre: 39 | blog: Drzy_Nazory | Praha
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí
    Ano přesně tak. echo s textem funguje, ale toto:
    echo `iwlist wlan0 scan` >> /home/smajchl/udev.txt
    echo `lspci` >> /home/smajchl/udev.txt
    
    NE, pokud ten skript spustim z konzole tak to funguje. Nemusí se to spouštět třeba přes su nebo sudo?
    My máme všechno co chcem, my máme dobrou náladu!
    21.3.2008 10:33 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí

    Proboha, jak vás napadlo

      echo `lspci` >> /home/smajchl/udev.txt
    

    Proč prostě nenapíšete

      lspci >> /home/smajchl/udev.txt
    

    což je jednodušší a netrpí problémy s expanzí mezer?

    21.3.2008 11:21 Smajchl | skóre: 39 | blog: Drzy_Nazory | Praha
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí
    Dik za upozornění, já tomu tolik nerozumim :-) Každopádně jsem si říkal, že když echo "bla bla" funguje, že to zkusim dát do echa, ale nefunguje ani jedno, co s tim?
    My máme všechno co chcem, my máme dobrou náladu!
    21.3.2008 11:32 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí
    Nejpravděpodobnější se mi jeví problém s nastavením proměnné PATH. Zkuste tam napsat celou cestu k tomu příkazu.
    21.3.2008 13:13 Smajchl | skóre: 39 | blog: Drzy_Nazory | Praha
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí
    ó děkuji ti mocný zachránče lspci už funguje ;-) jdu nakoupit a pak to rozchodim, ještě jednou díky, tohle mě nenapadlo, i když je to logický...
    My máme všechno co chcem, my máme dobrou náladu!
    18.3.2008 22:32 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí
    Gentoo má něco podobného implementovaného. Já jsem to jednou využil na spuštění konfigurace 802.11 rozhraní po objevení se řídícího zařízení atherosu.

    Ovšem jak je to konrétně uděláno, jsem nestudoval. Jen mám pocit, že to nespouští udev, ale hotplug.
    18.3.2008 23:05 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí
    Tak jsem to studoval a je to takto:

    V /etc/udev/rules.d je soubor, který spouští přes akci RUN script z /lib/udev. Ten ignoruje síťová zařízení, která se v systému objeví teprve, až když je zařízení ve stavu UP (např. ppp0), a pak spustí klasický init script z /etc/init.d. Jediná výjimka je událost odebrání zařízení, kdy se čeká 2 sekundy, aby zařízení skutečně zmizelo.

    V udev(7) se u akce RUN píše, že spouštěný skript by měl rychle skončit, aby neblokoval další udev události. Pro dlouhodobé skripty se doporučuje odpojení se od rodiče, aby rodič pouštený udevem mohl vrátit řízení udevu.

    Doporučil bych vám nasadit RUN skript na událost objevení se síťového zařízení wifi karty.

    Scénař by měl být takovýto: Přepnete tlačítko, na PCI se objeví zařízení wifi karty, jádro přes modul autoprobing (/proc/sys/kernel/modprobe) natáhne ovladač wifi karty, ten objeví síťové rozhraní, to vyvolá udev, který spustí váš RUN skript, ve kterém si nakonfigurujete síťové zařízení podle potřeby.
    19.3.2008 00:25 Smajchl | skóre: 39 | blog: Drzy_Nazory | Praha
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí
    Dík, ale bohužel to funguje trošku jinak, proto jsem to dělal na připojování bluetooth.
    [smajchl@smajlik ~]$ lspci | grep Broadcom
    02:04.0 Network controller: Broadcom Corporation BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (rev 02)
    02:0e.0 Ethernet controller: Broadcom Corporation BCM4401-B0 100Base-TX (rev 02)
    
    Vypnu tlačítko
    
    [smajchl@smajlik ~]$ lspci | grep Broadcom
    02:04.0 Network controller: Broadcom Corporation BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (rev 02)
    02:0e.0 Ethernet controller: Broadcom Corporation BCM4401-B0 100Base-TX (rev 02)
    
    U bluetooth se děje to, že se jakoby odpojuje z USB, acpi event to negeneruje a keycode už vůbec ne.
    My máme všechno co chcem, my máme dobrou náladu!
    19.3.2008 10:40 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí
    A zařízení 02:04.0 tam vidíte, i když nabootuje s vypnutým tlačítkem?

    Pokud ano, pak tlačítko neodpojuje toto zařízení od sběrnice (a musela by to být PCIE a v jádře mít pro ni podporu), ale funguje jako tzv. RF-kill. T.j. na wifině vypne oscilační obvody pro generování a zpracování signálu, ale karta jako taková pořád běží.

    Já jsem měl zkušenosti s iw2200, kde ovladač uměl reagovat na událost RF-kill, kterou deska posílala do wifi karty a z ní to ovladač uměl vyčíst. Takže když jsem přepnul tlačítko, tak se v logu jádra objevilo patřičné hlášení. Zrovna tak iwconfig z wireless-tools uměl tento stav správně zobrazit.

    Prakticky vzato mi karta včetně síťového rozhraní běžela pořád, a tak jsem ji konfiguroval standardně po bootu.

    Chování vašeho hardwaru je poněkud nestandardní. Zkuste hledat ohledně podpory rf-kill v bcm43xx.
    19.3.2008 14:40 Smajchl | skóre: 39 | blog: Drzy_Nazory | Praha
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí
    Jo to je takhle normální (na 90% to tak je i při bootu s vyplou kartou, jedině, když jí zakážu v biosu, tak se v lspci neobjeví, ale co to s tim má společnýho?), i když dám iwconfig, tak tam je wlan0 pořád.

    S ovladačem b43 (dřív bcm43xx) mi karta funguje jen trochu, záleží na přesné poloze notebooku, aby to vůbec fungovalo, otočim ho o 10cm a už neproleze paket, takže používám ndiswrapper, hledal jsem informace o rf-kill i u b43, kdyby se do budoucna zlepšil, ale nějak to nemůžu najít, pomoc je vítána :-)
    My máme všechno co chcem, my máme dobrou náladu!
    19.3.2008 16:20 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí
    Společné je to, že přepínáním tlačítka ve skutečnosti PCI nebo 802.11 zařízení wifiny nemizí nebo se neobjevuje. Tudíž na to udev nemůže reagovat.

    Nechápu, proč potřebujete reagovat na rfkill tlačítko, když tu kartu můžete zkonfigurovat po bootu? Nebo snad windowsí ovladač má problémy, když je na kartě vypnutý rádio? Obvávám se že pak ale je problém v NDIS wrapperu.
    19.3.2008 22:29 Smajchl | skóre: 39 | blog: Drzy_Nazory | Praha
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí
    abych mohl tlačítkem vypínat wifi a sama se připojovala a nemusel to dělat z konzole.

    A k tomu ovladači - má pořád problémy, ale aspoň, když už se připojí (to dá dost práce), tak aspoň je to spojení stabilní, ne jako s b43.
    My máme všechno co chcem, my máme dobrou náladu!
    19.3.2008 16:21 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše rfkill na b43
    Ohledně rfkill na b43 jsem našel patch, který exportuje rfkill událost do input zařízení. Je ale třeba mít v jádře zapnuto RFKILL_INPUT.
    19.3.2008 22:26 Smajchl | skóre: 39 | blog: Drzy_Nazory | Praha
    Rozbalit Rozbalit vše Re: rfkill na b43
    Dík, a jak se to potom používá? Nevím co si pod tou událostí představit.
    My máme všechno co chcem, my máme dobrou náladu!
    19.3.2008 23:48 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: rfkill na b43
    Asi se objeví nové vstupní zařízení v /dev/input a z něj lze číst události. Nikdy jsem to nepoužíval ani takový hardware nemám k dispozici. Zkuste návod ve zdrojácích jádra.
    19.3.2008 16:27 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí
    V udev(7) se u akce RUN píše, že spouštěný skript by měl rychle skončit, aby neblokoval další udev události. Pro dlouhodobé skripty se doporučuje odpojení se od rodiče, aby rodič pouštený udevem mohl vrátit řízení udevu.
    Zkoušel jste navěsit na RUN akci wrapper, který spustí na pozadí skutčný skript?
    #!/bin/bash
    skutecny_skript </dev/null &>/dev/null &
    
    19.3.2008 22:25 Smajchl | skóre: 39 | blog: Drzy_Nazory | Praha
    Rozbalit Rozbalit vše Re: Udev a RUN - spustit až udev skončí
    Ano, to jsem zkoušel, zkoušel jsem i tuto verzi, bohužel...
    My máme všechno co chcem, my máme dobrou náladu!

    Založit nové vláknoNahoru

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

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