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 03:00 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04 1.1 a 20.04 OTA-11. Vedle oprav chyb a drobných vylepšení je řešen také středně závažný bezpečnostní problém.

    Ladislav Hagara | Komentářů: 0
    dnes 00:33 | IT novinky Ladislav Hagara | Komentářů: 0
    včera 16:00 | Komunita

    Fedora zve na dvoudenní testování (2. a 3. prosince), během kterého si můžete vyzkoušet nové webové uživatelské rozhraní (WebUI) projektu FreeIPA. Pomozte vychytat veškeré chyby a vylepšit uživatelskou zkušenost ještě předtím, než se tato verze dostane k uživatelům Fedory a celého linuxového ekosystému.

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

    Eben Upton oznámil zdražení počítačů Raspberry Pi, kvůli růstu cen pamětí, a představil 1GB verzi Raspberry Pi 5 za 45 dolarů.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Humor

    Linus Torvalds na YouTube kanálu Linus Tech Tips staví dokonalý linuxový počítač.

    Ladislav Hagara | Komentářů: 6
    včera 04:11 | Nová verze

    Po 9 týdnech vývoje od vydání Linuxu 6.17 oznámil Linus Torvalds vydání Linuxu 6.18. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a Linux Kernel Newbies. Vypíchnout lze například podporu protokolu PSP (PSP Security Protocol, PSP encryption of TCP connections).

    Ladislav Hagara | Komentářů: 0
    včera 03:55 | Nová verze

    Byla vydána nová stabilní verze 25.11 linuxové distribuce NixOS (Wikipedie). Její kódové označení je Xantusia. Podrobný přehled novinek v poznámkách k vydání. O balíčky se v NixOS stará správce balíčků Nix.

    Ladislav Hagara | Komentářů: 0
    včera 03:22 | Komunita

    Richard Hughes na Mastodonu oznámil, že se společnost Framework Computer stala sponzorem služby LVFS (Linux Vendor Firmware Service) umožňující aktualizovat firmware zařízení na počítačích s Linuxem.

    Ladislav Hagara | Komentářů: 0
    28.11. 18:55 | Humor

    Jak na webu co nejšíleněji zadávat datum? Jak to uživatelům co nejvíce znepříjemnit? V Bad UX World Cup 2025 (YouTube) se vybíraly ty nejšílenější UX návrhy. Vítězným návrhem se stal Perfect Date.

    Ladislav Hagara | Komentářů: 18
    28.11. 12:44 | Zajímavý software

    Společnost Collabora vydala (YouTube) na LibreOffice založený desktopový kancelářský balík Collabora Office. Pro Windows, macOS a Linux. Se stejným uživatelským rozhraním jako Collabora Online. Svůj desktopový kancelářský balík s rozhraním LibreOffice pojmenovala Collabora Office Classic.

    Ladislav Hagara | Komentářů: 13
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (47%)
     (19%)
     (18%)
     (23%)
     (16%)
     (24%)
     (16%)
     (18%)
    Celkem 423 hlasů
     Komentářů: 17, poslední 19.11. 21:57
    Rozcestník

    Dotaz: Udev v initrd

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