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í
×
    dnes 01:22 | Nová verze

    Byla vydána nová verze 1.12.0 dynamického programovacího jazyka Julia (Wikipedie) určeného zejména pro vědecké výpočty. Přehled novinek v příspěvku na blogu a v poznámkách k vydání. Aktualizována byla také dokumentace.

    Ladislav Hagara | Komentářů: 0
    včera 15:11 | Bezpečnostní upozornění

    V Redisu byla nalezena a v upstreamu již opravena kritická zranitelnost CVE-2025-49844 s CVSS 10.0 (RCE, vzdálené spouštění kódu).

    Ladislav Hagara | Komentářů: 3
    včera 14:00 | IT novinky

    Ministr a vicepremiér pro digitalizaci Marian Jurečka dnes oznámil, že přijme rezignaci ředitele Digitální a informační agentury Martina Mesršmída, a to k 23. říjnu 2025. Mesršmíd nabídl svou funkci během minulého víkendu, kdy se DIA potýkala s problémy eDokladů, které některým občanům znepříjemnily využití možnosti prokázat se digitální občankou u volebních komisí při volbách do Poslanecké sněmovny.

    Ladislav Hagara | Komentářů: 11
    včera 12:33 | Zajímavý software

    Společnost Meta představila OpenZL. Jedná se o open source framework pro kompresi dat s ohledem na jejich formát. Zdrojové kódy jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 0
    včera 03:33 | IT novinky

    Google postupně zpřístupňuje českým uživatelům Režim AI (AI Mode), tj. nový režim vyhledávání založený na umělé inteligenci. Režim AI nabízí pokročilé uvažování, multimodalitu a možnost prozkoumat jakékoliv téma do hloubky pomocí dodatečných dotazů a užitečných odkazů na weby.

    Ladislav Hagara | Komentářů: 0
    7.10. 18:11 | Nová verze

    Programovací jazyk Python byl vydán v nové major verzi 3.14.0. Podrobný přehled novinek v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 2
    7.10. 16:33 | IT novinky

    Bylo oznámeno, že Qualcomm kupuje Arduino. Současně byla představena nová deska Arduino UNO Q se dvěma čipy: MPU Qualcomm Dragonwing QRB2210, na kterém může běžet Linux, a MCU STM32U585 a vývojové prostředí Arduino App Lab.

    Ladislav Hagara | Komentářů: 3
    7.10. 15:55 | Nová verze

    Multiplatformní open source voxelový herní engine Luanti byl vydán ve verzi 5.14.0. Podrobný přehled novinek v changelogu. Původně se jedná o Minecraftem inspirovaný Minetest v říjnu loňského roku přejmenovaný na Luanti.

    Ladislav Hagara | Komentářů: 0
    7.10. 13:22 | Nová verze

    Byla vydána nová stabilní verze 6.10 (YouTube) multiplatformního frameworku a GUI toolkitu Qt. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    6.10. 23:55 | Komunita

    Ubuntu 26.04 LTS bude (𝕏) Resolute Raccoon (rezolutní mýval).

    Ladislav Hagara | Komentářů: 5
    Jaké řešení používáte k vývoji / práci?
     (38%)
     (46%)
     (15%)
     (17%)
     (21%)
     (15%)
     (17%)
     (15%)
     (15%)
    Celkem 198 hlasů
     Komentářů: 13, poslední včera 07:41
    Rozcestník

    Dotaz: Udev v initrd

    26.7.2010 02:10 ja_kral_ll | skóre: 17
    Udev v initrd
    Přečteno: 343×
    Ahoj,

    trochu laškuju s cryptorootem a tedy i initrd.

    Nevíte o nějakym způsobu jak si v /dev po každym spuštění vytvořit soubory reprezentující disky ? Tahat na to do initrd udev se mi zdá zvrhlost a tak zvažuji že si napíši nějaký scriptík co zjistí připojené disky v procu a podle toho zavolá mknod.

    Nevíte o nějakém hotovém řešení ?

    Díky

    Odpovědi

    26.7.2010 07:16 frr | skóre: 34
    Rozbalit Rozbalit vše Re: Udev v initrd
    Ve FC5 je v initrd prográmek zvaný tuším udev_start. Včetně GNU Libc to má celé nějakých 5 MB. Netuším, jak velké je to třeba ve FC13 - nezkoumal jsem.

    Původně jsem se taky o něco snažil "po svém" v shellu, ale přistupoval jsem k tomu dost lemplovsky, moc mi to nefungovalo - na UDEV jsem přešel prakticky ve chvíli, kdy se objevil. IDE disky a partitions byly zjistitelné z /proc, SCSI disky asi budou chtít sahat do /sys (ale ono je to možná vhodné pro všechny druhy disků) - /proc/scsi/scsi není příliš podrobné. Jedna věc jsou device nodes (těch se dá vyrobit hrst staticky dopředu), druhá věc je vůbec zjistit, jaká zařízení jsou hardwarově připojena a podle nich vyrábět fstab (případně i generovat major/minor). Shell na to podle mého není dost mocný, Perl znamená desítky MB v malých souborech... snad jedině napsat si něco v holém C :-)

    Jeden zádrhel je se zařízeními na USB. Totiž detekce USB stromu dobíhá až poté, co se kernel už pokusí mountnout root. Takže třeba dát si root natvrdo (bez initrd) rovnou na /dev/sda1 na USBčku je prakticky nemožné - nebo jsem nepřišel na to, jak donutit kernel, aby před mountováním / počkal, až dojede inicializace USB. Když ale v initrd počkáte, třeba i nějaký pevný čas (mě se osvědčilo 6s), najednou tam ty disky jsou... Čili lenoch by počkal ve skriptu 6s a pak spustil udev_start.
    [:wq]
    26.7.2010 09:38 MMichal | skóre: 20
    Rozbalit Rozbalit vše Re: Udev v initrd
    Na Debianu pro cekani v initrd slouzi, pokud se nepletu, parametr bootu "rootdelay".
    26.7.2010 07:23 Michal Karas | skóre: 45 | blog: /dev/random
    Rozbalit Rozbalit vše Re: Udev v initrd
    Ahoj, trošku OT odpověď. Udev v initrd asi až taková zvrhlost nebude, minimálně Arch ho tam už spouští (a slyšel jsem, že pár dalších distribucí taky). Kdybys chtěl mrknout, jak to funguje, tak to je balíček mkinitcpio (a konkrétně hook encrypt).
    Max avatar 26.7.2010 10:02 Max | skóre: 72 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: Udev v initrd
    Přesně, navíc je udev doporučován dávat do initrd kvůli rychlejšímu startu systému.
    Zdar Max
    Měl jsem sen ... :(
    26.7.2010 13:09 ja_kral_ll | skóre: 17
    Rozbalit Rozbalit vše Re: Udev v initrd
    Aha, takže to nakonec dopadne tak že tam hodim staticky linkovanej udev...
    26.7.2010 19:37 xHire | skóre: 21 | blog: Linuxovník
    Rozbalit Rozbalit vše Re: Udev v initrd
    Šifruji celý harddisk a bootuji z flashky, přičemž initrd jsem si sestavil sám ze všech potřebných komponent. Rozchodit to nebylo jednoduché, můžu sem kdyžtak ještě během dneška hodit jeho obsah (jenom jako výpis souborů) + init skript. Nejvíce práce na rozcházení bylo právě s udevem a stále to ještě nemám úplně dolazené. Jiný funkční způsob než s použitím udev jsem nenašel (mám takový dojem, že některý z mnou používaných programů na něm dokonce přímo závisí).
    Kryptoměny a bločenka.
    26.7.2010 22:52 xHire | skóre: 21 | blog: Linuxovník
    Rozbalit Rozbalit vše Re: Udev v initrd
    Příloha:
    Tak jak jsem slíbil. Chtěl jsem nakonec svůj initramfs přiložit k tomuto příspěvku, ale systém ho odmítl jako příliš velký. Tak aspoň přikládám výpis jeho obsahu. Když na to teď, po pár týdnech, opět koukám, některé věci mi (opět) nedávají smysl (například duplikace lib64 v lib -- zřejmě jsem to tam měl kvůli testování, jinak nevím), takže to berte s rezervou. ;-)

    Do lib jsem nakopíroval celou udev složku a do sbin zase binárky udevadm a udevd, navíc ještě nesmím zapomenout na pravidla v etc/udev, byť tam mám pouze pro device-mapper.

    Zde ještě init v plném znění:
    #!/bin/sh -x
    
    export PATH=/bin:/sbin
    export LD_LIBRARY_PATH=/lib64:/lib
    
    # wait a little to avoid trailing kernel output
    sleep 7
    
    mount -t proc proc /proc
    CMDLINE=`cat /proc/cmdline`
    
    mount -t sysfs sysfs /sys
    mount -n -t devtmpfs udev /dev -o mode=0755,size=10M,nosuid
    
    # i don't have a qwerty keyboard
    #loadkmap < /etc/kmap-cz
    
    # run udevd
    echo > /proc/sys/kernel/hotplug
    udevd --daemon --resolve-names=never
    
    udevadm trigger --action=add
    udevadm settle
    
    # dm-crypt
    cryptsetup luksOpen /dev/sda encdisk
    
    # lvm
    vgscan
    vgimport lvm0
    vgchange -a y lvm0
    
    # root filesystem
    mount -r /dev/lvm0/root /newroot
    
    # stop udev
    udevpid=$(pidof udevd)
    udevadm settle
    kill ${udevpid} > /dev/null 2>&1
    while pidof udevd > /dev/null; do
            sleep 0.1
    done
    
    # remount /dev
    mount --move /dev /newroot/dev
    
    # unmount pseudo FS
    umount /sys
    umount /proc
    
    # root switch
    exec /bin/busybox switch_root /newroot /sbin/init ${CMDLINE}
    Hodně udev věcí jsem okoukával u Archu, nicméně si myslím, že by to šlo řešit ještě o něco lépe, než jak to mám já. Je tu vidět i zatím nedořešený problém s načítáním správného mapování klávesnice (což je důležité vědět při zadávání hesla -- zde bylo zakopáno hodně mých marných pokusů :-D).

    Snad to bude aspoň trošku přínosné.
    Kryptoměny a bločenka.
    Grunt avatar 26.7.2010 23:30 Grunt | skóre: 23 | blog: Expresivní zabručení | Lanžhot
    Rozbalit Rozbalit vše Re: Udev v initrd
    Nic bych si z toho nedělal. Ve Fedoře od dob co začali používat Dracuta v initrd smrdí jak celý initrd, tak téměř všechny moduly (a výsledek má skoro 30MB nebo 50MB).A divím, se že do něj nenacpali ještě celý inicializační subsystém. Pokud je potřeba, dá se udělat minimální verze udev z busyboxu (ale těžko říct, jak se bude snášet s tím systémovým).
    Na co 64-bitů když to jde i s jedním? | 80.78.148.5 | Hack (for) free or Die Hard!
    michich avatar 27.7.2010 07:42 michich | skóre: 51 | blog: ohrivane_parky
    Rozbalit Rozbalit vše Re: Udev v initrd
    Až takhle velký ten výsledek není. U mě má výchozí 12 MB, se zapnutým hostonly=yes v /etc/dracut.conf pak 5 MB.

    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.