KNOPPIX on CoLinux



Install CoLinux.

This version ( is tested. Documents are here.


Download a Knoppix ISO file from its web site.

Version 3.6 and 3.7 are tested.


Get my CoLinux initrd for Knoppix.

Unpack the content to your CoLinux installation path. Let's say C:\Program Files\coLinux. The minirtcl.gz file is the most important.

Create a configure file as follows or modify the example unpacked, the knoppix.colinux.xml.

What necessary is to change the file paths to your situation.

<?xml version="1.0" encoding="UTF-8"?>
    <!-- This line needs to point to your root file system.
           For example change "root_fs" to the name of the Debian image.
         Inside coLinux it will be /dev/cobd0 -->
    <block_device index="0" path="\DosDevices\E:\software\coLinux\knoppix_v3.7_20041208-20050107+bootchart.iso"
    enabled="true" />
    <!-- This line can specify a swap file if you wish, or an additional
         image file, it will /dev/cobd1. Additional block_devices can
         be specified in the same manner by increasing the index -->

    <block_device index="1" path="\Device\Cdrom0"
    enabled="true" />
    <!--Use the CD-ROM driver directly-->

    <block_device index="2" path="\DosDevices\D:\colinuxhome.img" enabled="true" />
    <!--if wuser exist in bootparams, the new user with this name will be created. Block device with index 2 (/dev/cobd2 in colinux) will be mounted as his home. -->

  <!-- /linuxrc in initrd will search all drivers including /dev/cobd[0-9] to locate Knoppix -->

<!-- bootparams allows you to pass kernel boot parameters -->
    <bootparams>ramdisk_size=4500 lang=us 2 vga=normal noscsi nodhcp nopcmcia nousb noagp nodma noapm xserver=Xnest kip= wuser=luwei wpwd=xxxxx wshare=</bootparams>
    <!--ramdisk_size=4500 is a must for minirtcl.gz is not default 4096 -->
    <!--change 5 to 2 to boot in textmode but X-Window run level -->
    <!--nodhcp, because we assign the IP address manually by kip= -->
    <!--noscsi nopcmcia nousb noagp nodma noapm nofirewire noacpi  are used to avoid unimportant error messages for knoppix 3.6/3.7 is with kernel 2.6.9, but coLinux 2.6.0 uses kernel 2.6.7-co-0.6.2 that makes modprobe in /colinux/knoppix-autoconfig inside minirtcl.gz fail. But number of bootparam is limited, when you can't set all of them, just ignore the modprobe error messages-->
    <!--wuser and wpwd are used to create a new user with name given by wuser and password given by wpwd. When lack of wpwd, the password will be the same to user name. With this user account, FreeNX server can be accessed to project GUI to other machines.-->
    <!--if wuser and wpwd are available, wshare gives a Windows share. It will be mounted with samba to "winrw" sub directory under wuser's home directory, /home/$wuser/winrw. -->
    <!-- image allows you to specify the kernel to boot -->
    <image path="vmlinux" />
    <!--our special initrd for colinux-->
    <initrd path="minirtcl.gz" />
    <!-- this line allows you to specify the amount of memory available
         to coLinux. Reduce this value when colinux complains that no enough physical memory-->
    <memory size="256" />

    <!-- This allows you to modify networking parameters, see the README
         or website for more information -->
    <network index="0" type="tap" />


Create a bat file or in a command box:

C:\Program Files\coLinux>colinux-daemon -t nt -c knoppix.colinux.xml

Option "-t nt" can be omitted if you don't want an individual control console.

In the booting process, the kernel related error message reported by modprobe can be ignored. See the comments in above configure file for details.

After colinux boots, you can use a NoMachine NX client to get into the GUI desktop. (NB: Every time colinux boots, its host id changes. NX Client (version 1.4 as I found) complains that and there is a bug on this. You have to manually delete the C:\Documents and Settings\USERNAME\.ssh\known_hosts file or remove the item inside it before execute NX client.)

Finally, we get this:



This work is based on Knoppix Japanese version at I do this because there are some mistakes in their original files and their files can not be downloaded separately from the huge ISO files. If there are any copyright issues, contact me.

Inside the initrd image, /dev/cobd[0-7] devices are created to correct the bug, and /colinux/knoppix-autoconfig file is enhanced to support new boot cheat codes to mount persistent home, start NX server and mount Windows shares.

Wei Lu (toluwei @ hotmail . com)