Embedded Linux - boot z initramfs

d.petr d.petr na post.cz
Čtvrtek Březen 26 09:48:57 CET 2015


Pavel Troller wrote:
>> Pavel Troller wrote:
>>>     Mám takovou krabičku s Blackfinem a v ní běží Linux. Jediným mass storage
>>> v krabičce je NAND Flash + malá SPI Flash na bootloader.
>>>     V první partici NAND je kernel, který v sobě má přibalený initramfs.
>>>     Pokud v kernelu není zakompilovaná podpora Block Devices (tj. NAND není
>>> přístupná jako mtdblock<x>), vše funguje, kernel bootne a dostanu shell z
>>> initramfs. S NAND však nemohu pracovat (formátovat, vytvořit root fs).
>>>     Pokud v kernelu popdora Block Devices zakompilovaná je, tak mi kernel hodí
>>> panic s typickou hláskou, že nemůže namountovat root filesystem - bodejť by
>>> mohl, když ta NAND dosud nebyla ani zformátovaná, natož aby v ní ten root fs
>>> byl. Potřebuji boot z initramfs, kde mám připravené formátovací a jiné
>>> utility. Zdá se však, že initramfs je v tomto případě ignorován.
>>
>> A co bude v tom NAND za souborový systém? Jestli JFFS2, tak ten se dá
>> připravit předem, do oddílu v NAND se nahraje (jestli to ten bootloader
>> umí) a pak už se jen používá, tzn. lze z něj i bootovat apod.
>> PM
> Zdravím,
>   chci tam dát F2FS. To, co říkáte, lze samozřejmě udělat s jakýmkoliv FS -
> pomocí dd vytvořím soubor vhodné velikosti, přes loop z něj udělám block
> device, vytvořím v něm FS, mountnu, nakopíruji, odmountnu, odloopuji a
> flashnu do NAND. Nevýhodou je, že takto lze flashnout image jen o něco menší,
> než je kapacita RAM - 64 MB, neboť to z tftp musím stahnout do RAM a z ní pak
> flashnout tím bootloaderem. Musel bych tedy vytvořit nějaký pomocný malý fs,
> pomocí něj to oživit a pak ho používat třeba jen jako partition na /var nebo
> podobně. To mám v záloze. Jenže já mám stejně rád, když mne tučňák poslouchá
> :-) a ne, že já se budu přizpůsobovat jeho vrtochům. To bych mohl rovnou
> používat jiné OS :-) :-).
>    Zdraví Pavel

Právě že u toho JFFS2 jsem to viděl používat trošku jinak. Tam se v PC 
připravila struktura budoucího FS (adresáře a soubory), z ní se 
nástrojem pro JFFS2 vytvořil obraz, ale ne velikostně 1:1 jako z "dd", 
spíš bych to přirovnal k "tar", ten obraz měl pár MB a nahrál se do 
oddílu v NAND, kde pak byla hned celá struktura přístupná ovšem včetně 
volného normálně využitelného místa do plné velikosti oddílu NAND. Zřemě 
jde o zvláštní vlastnost JFFS2, jestli ji má i F2FS, nevím.
PM


Další informace o konferenci Hw-list