PDA

View Full Version : Suggestion for Customizations w/o Remastering



mr-roboto
04-30-2007, 10:54 PM
I just started looking at the init ramdisk, w/ the intention of modifying it. While my research is incomplete, it occurs to me that a modification before the next release may be desirable and feasible, to minimize the need for certain remastering operations.

My proposal is to create a new directory tree in the ramdisk image, /custom, the contents of which would parallel the system's boot script hierarchy (/etc/init.d). The idea is that instead of remastering simply to change some part of the /etc/init.d hierarchy or to accept the scripts as they are, one could make changes to the custom sub-dir and as part of the linuxrc initialization the updated/experimental scripts would be copied into the union for subsequent use by Knoppix.

There are several potential uses, but I can foresee this mechanism being most useful to start the various (Samba/terminal server/web server/etc) servers automatically, in the same way one would configure a conventional hdrive Linux installation. But custom initialization tasks in general could be addressed in this manner w/o requiring the base system to be remastered. The proposed alterations would be limited to linuxrc and the addition of the /custom/etc/init.d sub-dir (and contents) to the init ramdisk.

I haven't had an opportunity to verify the concept, as I'm not a proficient shell script programmer, but conceptually the idea seems that it would be quite simple to validate by someone who is more capable. The only foreseeable problem at this point, is whether or not the union's structure is available for this kind of modification (ie. does the compressed filesystem get mapped into the union after control has past from linuxrc.)

Actually, updated/modified system binaries could be accommodated as well, with the sole limit being the size of the ramdisk itself.

I hope to return to this exercise in the next week and report back w/ my findings. I also hope that this idea makes it beyond the forum, for consideration by Knopper, in order to be considered for inclusion in the next revision of Knoppix. Frankly, I'm not sure if this idea has been discussed already, but it seems to be simple to implement and validate, by someone w/ more familiarity w/ the init scripts and shell scripting in general.

Regards

greenfly
01-10-2008, 05:48 PM
Knoppix already has a mechanism to do basically what you would like to do. I'm actually a big fan of customizing Knoppix without remastering and with AuFS and the persistent disk image you can do a lot of changes with Knoppix without a full remaster. I covered these techniques a bit in the first Knoppix Hacks but that was before AuFS/UnionFS. In the second edition though I really expanded because you could just do so much without having to open up that KNOPPIX file and tweak it.

At a basic level you can achieve what you want by tarring up the files that you want to add, including any packages, etc. into a tarball that you place in the KNOPPIX/ directory on the disc (probably DVD since the CD is pretty full). Then just create a knoppix.sh file in that directory that extracts the tarball and runs any other programs (like installing any .debs, etc.) that you want. The knoppix.sh script will be run at boot.

Or you could just make the changes you want to make and then add them as part of a persistent disk image, and then add the persistent disk image to the DVD itself if you don't want to carry it around on a USB disk.

Just a few ideas. I've actually been able to do a lot with this "remaster without remastering" method including setting up a custom Knoppix CD as a local webcam server.