PDA

View Full Version : Messing around with miniroot... how to add a copy command?



dvessey
02-03-2003, 04:54 AM
So I'm trying to get knoppix to copy onto the ramdisk and then run completely out of ram. I've managed to trim it down enough to fit, now it's just a matter of figuring out how to get it from the CD to the ram, which is where I run into trouble...

I tried just copying /bin/cp to /static/cp in miniroot, but no luck there at all, it won't run it for some reason.

So, any ideas on how to get the cloop image from the CD to the ramdisk?

Thanks!

Alextreme
02-03-2003, 09:05 PM
Hmm, i'm playing around with 2880kb boot images now, i'll see if i can throw in a loadtoram option. Dunno how far i'll get though :D

btw, how small did you get it?

dvessey
02-03-2003, 09:39 PM
It's down to about 195MB... this is by no means the final product, this is just so that I can test it to see if it actually works.

ok, I've gotten myself a little bit farther, but I've run into another wall.

So I figured out that the ramdisk isn't set up before the cloop image is mounted.. great. so I made the /ramdisk directory on miniroot and put it onto a boot floppy.

so I let it start up with no cd in the drive so I'd get dumped at the crappy ash prompt, and loaded the reiserfs.o module from another disk so I could access my cloop image from the hard drive.
everything's going fine until this point, no problems.. I mount the hard drive to /cdrom and mount the ramdisk by "mount -t tmpfs /dev/shm /ramdisk".
then instead of copying, i try "cat /cdrom/KNOPPIX/KNOPPIX > /ramdisk/KNOPPIX". this goes through fine, but then when i try "insmod cloop.o file=/ramdisk/KNOPPIX", it gives me some error message about something not matching(damn.. can't remember the word right now. it was like "final (something) is 2..(big number) and not 13...(another big number)".

sooo.. my guess is cat messes up the image on it's way over to the ramdisk. any idea why or how i could fix it? :D

eadz
02-03-2003, 10:34 PM
if you want to put a command into the miniroot.gz, put it in /static, but you can't just copy "cp"

It has to be statically linked, e.g. doesn't link to any librarys. So you'll have to recompile it wil the gcc option --static

dvessey
02-03-2003, 11:17 PM
ok! now it makes sense... :) thanks!

dvessey
02-04-2003, 09:41 PM
ok.. a little farther ahead now. I got cp statically compiled, and added it to it's own dir on the CD along with some other stuff from fileutils. Now the problem I'm having is with getting the ramdisk mounted properly with the limit set(otherwise the full cloop image doesn't get copied)

I downloaded util-linux, set LDFLAGS=-static and compiled them, but mount doesn't seem to want to work anyway. any ideas here?

thanks again!