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 20:11 | Komunita

    Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma. V Týdnu v GNOME je zmíněn flatpak balíček pro GIMP 0.54.1 z roku 1996. Jedná se o poslední verzi GIMPu postavenou nad toolkitem Motif.

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

    Home Assistant Operating System, tj. linuxová distribuce optimalizována pro hostování Home Assistanta a jeho aplikací, byl vydán v nové major verzi 18.0.

    Ladislav Hagara | Komentářů: 0
    včera 18:11 | Komunita

    Po šestiletém úsilí byla z jádra Linux odstraněna funkce strncpy(). Všechna předchozí volání této funkce byla převedena na bezpečnější alternativy.

    Ladislav Hagara | Komentářů: 1
    včera 17:22 | Nová verze

    Byla vydána nová verze 261 správce systému a služeb systemd (Wikipedie, GitHub). Z novinek lze vypíchnout nový subsystém IMDS (Cloud "Instance Metadata Service"), nový příkaz storagectl nebo novou komponentu systemd-sysinstall.

    Ladislav Hagara | Komentářů: 2
    včera 12:00 | Nová verze

    Vývojové prostředí Qt Creator bylo vydáno ve verzi 20 (seznam změn). Novinky zahrnují hlavně rozšíření pro integraci LLM agentů nebo minimalistický editační režim uživatelského rozhraní („zen mode“).

    |🇵🇸 | Komentářů: 0
    19.6. 10:22 | Humor

    Už jste se prolétli na webu Google Earth? Přibyl tam Simulátor letu (Nástroje / Simulátor letu). Funguje i bez účtu Google [𝕏].

    Ladislav Hagara | Komentářů: 0
    19.6. 09:55 | Nová verze

    Byla vydána nová verze 4.7 (𝕏, Bluesky, Mastodon) multiplatformního open source herního enginu Godot (Wikipedie, GitHub). Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 3
    18.6. 13:33 | Nová verze

    Mastodon (Wikipedie) - sociální síť, která není na prodej - byl vydán ve verzi 4.6. Přehled novinek s náhledy v oznámení na blogu.

    Ladislav Hagara | Komentářů: 0
    18.6. 12:44 | IT novinky

    V Edici CZ.NIC, knižní řady správce české národní domény, vychází nová kniha Martina Malého Kódy, buildy, firmwary. Autor po půl roce od vydání předchozího titulu přichází se svou již sedmou knihou, tentokrát zaměřenou na vývoj programového vybavení pro embedded zařízení. Publikace s podtitulem Základy vývojářského řemesla pro tvůrce hobby elektroniky nabízí praktického průvodce pro všechny, kdo své projekty vytvořené s Arduinem

    … více »
    Ladislav Hagara | Komentářů: 0
    18.6. 11:44 | Komunita

    V Brně na FIT VUT probíhá dvoudenní open source komunitní konference DevConf.CZ 2026. Na programu je celá řada zajímavých přednášek, lightning talků, meetupů a workshopů. Přednášky lze sledovat i online na YouTube kanálu konference. Aktuální dění lze sledovat na Matrixu, 𝕏 nebo Mastodonu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (16%)
     (31%)
     (3%)
     (6%)
     (3%)
     (15%)
     (26%)
    Celkem 1949 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: Udev v initrd

    26.7.2010 02:10 ja_kral_ll | skóre: 17
    Udev v initrd
    Přečteno: 395×
    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: 73 | 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.