[nas-2000] Re: custom kernel/ initrd problem

  • From: Felix Mellmann <mellmispam@xxxxxx>
  • To: nas-2000@xxxxxxxxxxxxx
  • Date: Fri, 04 Jan 2008 16:10:22 +0100

Hello Dan,

ahm yes, i choosed ext2 .. because I learned how to create initrds with kernel 2.0.36 or so ... and I hadn't got the time to change over to cpio .. but you can use a larger initrd if you want, but you have to remove the "Application" file in flash. I kept that one because its then easier to switch to the old system. If you have a look on my initrd, there are just some needed devices, 2 essential libraries and the modified /sbin/init which swaps from flash to hdd. I don't know what you want to do with cryptonas, but I think, when you just encrypt your data partition, then the solution I gave will fit to your needs?! (except the kernel).

Btw. can you please tell me which kernel sources you have used? The vanilla (unpatched) kernel sources don't include the drivers for the board used in the NAS... so I haven't build a kernel for the NAS by myself.

2nd Btw. where did your 3 MB initrd image came from?


Dan Luedtke schrieb:
Hallo guys,

i installed debian linux on my nas-1000 because i'd like to run crptonas-server package for ARM onto it. But figured out that the kernel provided with the installation instructions does not have or load the required modules. (such as dm_crypt and the device mapper in general)

As i am relatively new to compiling the kernel by myself, the first run (it took the nas1000 the whole night btw) was not usable because of the lack of initial ramdisk. So i compiled again, this time with initial ramdisk. Now i have a initrd.img in /boot

It is a gzipped cpio file. Note: The initrd.gz from Felix is a gzipped ext2 filesystem!
My file is about 3,09 MB, Felix' is just 2 MB.
The avaible space for Ramdisk in the flash is also about 2 MB.

My problem: My initrd is way to large! And i'm not getting it much smaller. Tried a lot of things.

Can i flash the bigger file to the flash and just hope bootloader does not stop after reading the 2 MB?

Is there a way to reduce the size of the initrd?

Or, is there a way the initrd just loads the/dev/hda, walks straight into /boot und then boots the initrd.img (which is about 3MB) instead of the kernel? Someone understanding what i want to say? I like to habe 2 initrds, the first one just fires up the disk and the restarts the hole booting from the disk with the proper, but larger, initrd.img

Still wondering how people get these ramdisks so damn small. But first steps into embedded are interesting :)



PS: I'll change the wiki if no one complains, because it is not necessary anymore to solder a chip to the bord for installing debian onto the drive. It works fine by using the arping methoed like in normal Tinky flashing.

Other related posts: