LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (http://www.linuxquestions.org/questions/slackware-14/)
-   -   Initrd.img (http://www.linuxquestions.org/questions/slackware-14/initrd-img-264505/)

spaguzz 12-09-2004 12:40 PM

Initrd.img
 
I'm making a LiveCD from the Slackware 10.0 using a guide find online. In a particular point i need to specify the initrd.img to use... but what initrd.img I MUST use.?

Second question: to install my prefer package I use installpkg comand and put them in my LIVE directory... How am I certain I really can use what installed?

Have someone any ideas to make livecd easy??? or explain the main operations to do.,...???

Please help me...

DaHammer 12-09-2004 04:21 PM

I've never setup a LiveCD before, but I'd persume that you only need the initrd to get booted. An initrd is a very small self contained root file system that the kernel loads into RAM to get everything going initially. Most of them contain Busybox, which is an all in 1 binary capable of emulating almost all the core linux shell utilities. They are popular for bootable floppies, CDs & etc, since they are so small. You can either build your own from scratch or use some other one. The one for the Slackware installation CD is in the Slackware package tree at isolinux/initrd.img. It's rather large for an initrd, at over 6MB decompressed, but should be fine for a CD. You'll probably want to customize it (if you use it) though since it's customized for installing Slackware. It's also gzip'ed, so you'll have to decompress it before you can mount it.
Code:

gunzip -S .img initrd.img
You can then mount it on a loop device like so:
Code:

mount initrd /path/to/mountpoint -o loop
I'm not sure I'd use it for what you're wanting to do though, since all extras in it may complicate the learning curve a bit. But nevertheless, it will give you an idea of how it works.

Slackware also comes with a utility called mkinitrd for working with them.

Second question:
I assume you're installing them with:
Code:

installpkg -root /path/to/liveCD packagename
? If so, the biggest thing will be working out the dependancies since the Slackware packages aren't built static. Patrick V. almost certainly has a program for automating this but whether or not it's included in Slackware I have no idea. You could use ldd & strace to do it manually, or write a shell script to use them, on every single binary you install in your LiveCD, but man what a daunting task. :) I suppose you could just include all the "required" packages for Slackware and build off that as well. That's probably the easiest way, since you're basing it off of Slackware and the documentation in Slackware will have most of that info. If all you need is a command line LiveCD, then you probably want have to look any further than Busybox. You'd be surprised what it can do. But if you're wanting something full-blown with X and Slackware based, then you got a bit of work to do.

As far as verifing that what you install to it actually works, you can chroot into the LiveCD directory once you have a shell installed in it and test them for yourself without ever writing a CD. That's also a way of verifing that you have all the required libs & dependancies in place as well.

At the end of the day, I'd say there is no "easy" way to do it unless you've done it before and have added some automation to the process. Have fun!

spaguzz 12-10-2004 03:46 AM

Thanks
 
ok ok I'll try this way, patience and... time!

Thanks a lot...

gnashley 12-16-2004 04:13 AM

What guide are you using? Post a link please.
There used to be a note from patrick V. in one of the old trees at ftp.slackware.com, which told how to create the Slackware LIVE CD#2, including the command line syntax used for mkzftree and mkzisofs. Does anyone have that document?
What syntax are YOU using?

spaguzz 12-16-2004 04:35 AM

I've used this one:

http://www.osnews.com/story.php?news_id=3747

...


All times are GMT -5. The time now is 07:28 AM.