Remaster Knoppix without Remastering
Along with the other boot files, under boot/isolinux/ is the default Knoppix initrd file called minirt.gz. This file is the initial root image that Knoppix mounts. Within the image are essential files for the boot process, including the init executable, but the file of most interest to Knoppix hackers is the linuxrc file, which acts as Knoppix's general startup script. First, make a copy of the minirt.gz file (in my example, I assume it was mounted under /cdrom), uncompress it and then mount the filesystem:
# cp /cdrom/boot/isolinux/minirt.gz . # gunzip minirt.gz # mkdir temp # mount -t ext2 -o loop minirt ./temp
Now, if you look in the top-level directory of that mounted filesystem, you will see the linuxrc file. A lot of the script defines default settings, such as which filesystems are built in to Knoppix and the process Knoppix uses to mount them, but you also can see where Knoppix defines system-wide defaults and also allows you to override them. For instance, the following lines define the default Knoppix directory and cloop file and the ability to overwrite them via a cheat code:
KNOPPIX_DIR="KNOPPIX" KNOPPIX_NAME="KNOPPIX" case "$CMDLINE" in *knoppix_dir=*) KNOPPIX_DIR="$knoppix_dir"; ;; esac case "$CMDLINE" in *knoppix_name=*) KNOPPIX_NAME="$knoppix_name"; ;; esac
If you want to add some extra functions to the boot process, read through the script to identify where would be best. For instance, at some points of the script, the KNOPPIX cloop filesystem isn't loaded yet, nor are many common modules. If you aren't sure where to add your changes, just add them to the end of the script before the comment #Give control to the init process. At that point, Knoppix should have major modules and filesystems loaded and mounted.
Once you are finished with your tweaks, unmount the minirt filesystem and recompress it. Then, you can overwrite the default version with your custom edition:
umount temp gzip -9 minirt
These are only a few examples of how to remaster Knoppix without remastering. One of the great things about these methods is that they are typically easy to try, so if you make a mistake, you can fix it quickly. Plus, most of these methods lend themselves well to migration from one Knoppix disc to the next for when the next version of Knoppix is released. Finally, because most of your custom tweaks can be self-contained, if you want to share them with friends, you simply can share your knoppix.sh and configs.tbz files, for instance, instead of an entire ISO image.
Kyle Rankin is a Senior Systems Administrator in the San Francisco Bay Area and the author of a number of books, including Knoppix Hacks and Ubuntu Hacks for O'Reilly Media. He is currently the president of the North Bay Linux Users' Group.
Kyle Rankin is a director of engineering operations in the San Francisco Bay Area, the author of a number of books including DevOps Troubleshooting and The Official Ubuntu Server Book, and is a columnist for Linux Journal.
|Privacy Is Personal||Jul 02, 2015|
|July 2015 Issue of Linux Journal: Mobile||Jul 01, 2015|
|July 2015 Video Preview||Jul 01, 2015|
|PHP for Non-Developers||Jun 30, 2015|
|A Code Boot Camp for Underprivileged Kids||Jun 30, 2015|
|Comprehensive Identity Management and Audit for Red Hat Enterprise Linux||Jun 29, 2015|
- Privacy Is Personal
- PHP for Non-Developers
- Linux Kernel 4.1 Released
- Secure Server Deployments in Hostile Territory
- July 2015 Issue of Linux Journal: Mobile
- Django Templates
- Comprehensive Identity Management and Audit for Red Hat Enterprise Linux
- A Code Boot Camp for Underprivileged Kids
- Attack of the Drones