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
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