[Buildroot] Creating initrd

Chris Wilkinson kinsham at verizon.net
Thu Oct 11 17:28:04 UTC 2012


I had not done 'make clean' first. Having done that and rebuilt with the
same config I now have,

-rw-r--r-- 1 chrisw chrisw 49223680 Oct 11 13:14 rootfs.cpio
-rw-r--r-- 1 chrisw chrisw 17878125 Oct 11 13:15 rootfs.cpio.gz
-rwxr-xr-x 1 chrisw chrisw 19337904 Oct 11 13:17 zImage

It would appear that the initramfs has been embedded within zImage.
Still way too big. This is a puzzle since as you say I took care to not
enable any but the most basic of packages.

Chris

On Thu, 2012-10-11 at 17:23 +0200, Thomas Petazzoni wrote:
> On Thu, 11 Oct 2012 11:16:09 -0400, Chris Wilkinson wrote:
> > The .config is here
> > 
> > http://pastebin.com/84LqnBXS
> 
> Are you sure you did a "make clean; make" after doing all your
> configuration changes? Your configuration has almost no packages
> enabled, the generated root filesystem definitely shouldn't be that big.
> 
> > This shows what I'm trying to achieve.
> > 
> > http://d-i.alioth.debian.org/manual/en.armel/ch05s01.html#boot-firmware. 
> > 
> > The output on the serial console goes like this on power up.
> > 
> > >>
> > No network interfaces found
> > 
> > EM-7210 ver.T04 2005-12-12 (For ver.AA)
> > == Executing boot script in 1.000 seconds - enter ^C to abort
> > 
> > At this point, hit Control-C to interrupt the boot loader[4]. This
> > will give you the RedBoot prompt. Enter the following commands:
> > 
> > > load -v -r -b 0x01800000 -m ymodem ramdisk.gz
> > > load -v -r -b 0x01008000 -m ymodem zImage
> > > exec -c "console=ttyS0,115200 rw root=/dev/ram mem=256M at 0xa0000000" -r 0x01800000
> 
> You have two choices:
> 
>  1 Use an initramfs embedded inside the kernel image. This is what
>    Buildroot does when you enable the BR2_TARGET_ROOTFS_INITRAMFS
>    option. In that case, you only need to load zImage to RAM, and
>    execute it, it already contains the initramfs.
> 
>  2 Use an initramfs outside the kernel image. In that case, don't
>    enable the BR2_TARGET_ROOTFS_INITRAMFS Buildroot option, and simply
>    generated a compressed cpio archive for the root filesystem, thanks
>    to BR2_TARGET_ROOTFS_CPIO + BR2_TARGET_ROOTFS_CPIO_GZIP. Then, make
>    sure your kernel as the support for initramfs enabled.
> 
> I am quite familiar with choice 1, but I haven't tested choice 2 with
> Buildroot.
> 
> Best regards,
> 
> Thomas





More information about the buildroot mailing list