coLinux 0.6.4 and before with XML configuration

Old coLinux versions up to 0.6.4 used XML file as configuration. We stuck this old UserConfigs here. The current should only have the new plain text formats for version 0.7.1 and later.

LAN with NAT

I had a tough time getting colinux networking to work through my wireless LAN since I already use NAT and the colinux NAT conflicts with it.

I solved the problem by changing the coLinux NAT IP address range from 192.168.0.X to 10.10.10.X i.e. the coLinux IP went from to and then it works just fine.

I launch colinux using the following bat file:

netsh interface ip set address name = "TAP Connection" source = static addr = mask =
colinux-daemon.exe -t nt

Here is the coLinux config file:


Here is the debian /etc/network/interfaces file:

auto lo eth0

iface eth0 inet static

iface lo inet loopback

Here is the output of ipconfig on Windows 2000:

Windows 2000 IP Configuration

Ethernet adapter TAP Connection:

        Connection-specific DNS Suffix  . :
        Description . . . . . . . . . . . : TAP-Win32 Adapter
        Physical Address. . . . . . . . . : 00-FF-67-BA-0E-76
        DHCP Enabled. . . . . . . . . . . : No
        IP Address. . . . . . . . . . . . :
        Subnet Mask . . . . . . . . . . . :
        Default Gateway . . . . . . . . . :
        DNS Servers . . . . . . . . . . . :

Ethernet adapter Cisco Aironet:

        Connection-specific DNS Suffix  . :
        Description . . . . . . . . . . . : Cisco Systems 350 Series PCMCIA Wireless LAN Adapter
        Physical Address. . . . . . . . . : 00-09-B7-02-54-5F
        DHCP Enabled. . . . . . . . . . . : Yes
        Autoconfiguration Enabled . . . . : Yes
        IP Address. . . . . . . . . . . . :
        Subnet Mask . . . . . . . . . . . :
        Default Gateway . . . . . . . . . :
        DHCP Server . . . . . . . . . . . :
        DNS Servers . . . . . . . . . . . :

Here is the debian ifconfig output:

eth0      Link encap:Ethernet  HWaddr 00:43:4F:4E:45:30
          inet addr:  Bcast:  Mask:
          RX packets:43 errors:0 dropped:0 overruns:0 frame:0
          TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:4298 (4.1 KiB)  TX bytes:798 (798.0 b)

lo        Link encap:Local Loopback
          inet addr:  Mask:
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

Hope this helps anyone with a similar problem

home notebook with 512MB RAM

Here's a working colinux config file from tdeagan's XP home notebook with 512MB RAM (tim at deagan dot net) that sets the colinux machine up for:

  • 82MB of memory (hey, that's the best it seemed to be stable with)
  • A second 1GB cobd file that got wiped and remounted as /usr after copying the original /usr to it
  • A swapfile -- look up how to make this image in the devlist archive or look at this Wiki page.

I also use a cygwin.bat (or cygwin.cmd) file that allows me to get ncurses to work right (note env variable set up prior to running cygwin):

@echo off
chdir C:\cygwin\bin
set CYGWIN=codepage:oem
bash --login -i

Hope this helps someone

Networking with Gentoo

Here is mine, with successful networking with gentoo (not finished, but working)

  • Windows configuration
Configuración IP de Windows 2000

Ethernet adaptador internet:

        Sufijo DNS específico de la conexión. : WorkGroup
        Dirección IP. . . . . . . . . . . . . :
        Máscara de subred . . . . . . . . . . :
        Puerta de enlace predeterminada . . . :
  • Linux configuration
eth0      Link encap:Ethernet  HWaddr 00:4A:41:52:45:4B
          inet addr:  Bcast:  Mask:
          RX packets:53 errors:0 dropped:0 overruns:0 frame:0
          TX packets:48 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:8750 (8.5 Kb)  TX bytes:5008 (4.8 Kb)

lo        Link encap:Local Loopback
          inet addr:  Mask:
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

  • Cfg file:


I use this configuration file for gentoo.colinux.conf:

    # This line must specify the swap file to use (256MB).                         #
    # Inside coLinux it will be /dev/cobd0.                                        #


    # These lines specify the several filesystems to use.                          #
    # Specified ~FileSystem Partitions will be:                                    #
    #   /boot - 64MB                                                               #
    #   /root - 1GB                                                                #
    #   /usr  - 2GB                                                                #
    #   /var  - 1GB                                                                #


    # These lines can specify additional Block Devices with Index equal or higher  #
    # than index 6, for Hardware Devices such as Floppy Disk Drives or CD-ROMs.    #


    # This line specifies the Boot Parameters to pass to Kernel.                   #
    # After Gentoo is installed, the Root Parameter points to /dev/cobd2.          #

# root=/dev/cobd2

    # This line specifies the Kernel Image to boot.                                #
    # Other Kernel images can be set, but Windows must have access to them.        #


    # This line specifies the amount of memory available to coLinux.               #
    # Usually, set SWAP Partition to 2x the Memory Size available to coLinux.      #


    # This line specifies the networking parameters.                               #
    # The coLinux NIC is DHCP enabled, bridged with the Windows Host NIC.          #

eth0=pcap-bridge,"Broadcom ~NetXtreme Gigabit Ethernet"

    # Company:  ~DoWeDo-IT                                                        #
    # Project:  Gentoo 2004.1 on coLinux 0.6.1                                    #
    # Filename: gentoo.colinux.xml                                                #
    # Author:   José Carlos Monteiro                                              #
    #       Mob: +351.91.776-5726   #
    # Description: This configuration file is ready for a Gentoo installation     #
    # from scratch, using Mandrake 10.0 Linux Rescue Disk.                        #

Transparent bridging example

Transparent bridging example. This essentially gives my colinux instance its own nic.

cobd0="C:\Program Files\coLinux\Debian-3.0r0.ext3.1gb"
cobd1="c:\Program Files\colinux\swap_device"

# specify the name and mac of the physical interface that we want to bridge onto #
eth0=pcap-bridge,"Intel 8255x-based PCI Ethernet Adapter (10/100)",00:50:8D:48:BF:3A


My configuration of coLinux using the Debian image.

It took me a long time before I understood how networking worked, but it is in fact very simple.

My Windows computer is running ICS (Internet Connectivity Sharing), so I have two network card:

  • NVIDIA nForce MCP Networking Controller (connected to my cable modem)
  • Marvell Yukon Gigabit Ethernet (connected to my Linksys 5-port workgroup switch)

I wanted my coLinux to be able to access the net. So I bridge it to the LAN NIC (, giving it a random mac address (not the same as the Marvell as I originally thought!). Very simple!

Now, when I start coLinux, I can either get a DHCP address from Windows ICS or set an IP in the range

File: /etc/network/interfaces

# Used by ifup(8) and ifdown(8). See the interfaces(5) manpage or
# /usr/share/doc/ifupdown/examples for more information.

auto lo eth0

#iface eth0 inet dhcp
iface eth0 inet static

iface lo inet loopback

File: colinux.conf

# My Windows OS and Program Files is on F:\ #
eth0="f:\Program Files\coLinux\Debian-20040605-mit.ext3.1610mb"
cobd1="f:\Program Files\coLinux\swap_device"
# The magic of bridging #

File startup.bat (one click startup of my Linux daemon):

colinux-daemon @colinux.conf -t nt -d

See also: Network Description 2

Knoppix? Replace vmware given RH9?

Does anyone have a working config for knoppix?

Does anyone have a working config to replace vmware given RH9 installed on partitions 2/3/4?

Need COFS example

We need to Insert an XML config file with a COFS setup here.. I'm trying to get one running. Either that, or offer a CommandLineReference on the wiki, because I'm trying to get COFS running and am currently using an XML file. I might convert over to using command line arguments for the time being, if it's easier to get COF working.. we should have more info on the wiki here about the available command line arguments in Command Line Reference --LarsOlson.

There is a brief explanation here:

In XML file can't setup cofs. Cofs is only working on commandline parameter or in new plain text configs.

For the newest version of coLinux do this:

Edit coLinux.config file (or whatever you choose to name the file) - Add one line like this:


Now start coLinux and type this:

mkdir /mnt/windows
mount -t cofs 0 /mnt/windows

To "use" what you just did type this:

ls -l /mnt/windows

That will give you a directory listing of your c:\ drive. You can specify a "non-root drive directory" (EG: c:\somewhere) and then type the remaining commands the same way.

Then when you type "ls -l /mnt/windows" the directory c:\somewhere will be the "psuedo-root-directory" - by that I mean that you can NOT type "ls -l /mnt/windows/.." and view the directory "c:\" .

That protects your "c:" drive's root directory (not to be confused with coLinux's "/" directory or coLinux's "/root" directory _OR_ any directory owned by "root"   ;-)   ).

Debian again

) Another satisfied customer :) Here's my Config File in full for anyone who wants to see it... I was kicking myself in the ass because I didn't realize you have to EXTRACT THE DEBIAN KERNAL BEFORE YOU CAN USE IT!
cobd0="E:\Program Files\coLinux\Debian-3.0r2.ext3-mit-backports.1gb"


Can anyone help me? I need a Config that will work with MEPIS, on a dual-boot Win-XP Home PC

Networking with SLIRP (for Internet) and TAP (for X server)

TAP configuration in Windows (see note 1):

IP address:
Subnet mask:
Default gateway:

colinux config file part:


I use Xming for my X server:

Xming.exe -ac -fullscreen -clipboard

In colinux, with Debian:

In /etc/network/interfaces:

auto eth0
iface eth0 inet dhcp

auto eth1
iface eth1 inet static

To run an X client:

~$ export DISPLAY=
~$ xterm

In colinux, with Gentoo:

In /etc/conf.d/net (see note 2):

config_eth0=( "dhcp" )
config_eth1=( "")

In /etc/ssh/sshd_config (see note 3):

X11Forwarding yes
HostKey /etc/ssh/ssh_host_dsa_key
ServerKeyBits 2048
PermitRootLogin no
RSAAuthentication no
PasswordAuthentication no
UsePAM yes

I'm not sure how much of that is necessary. I got it from

To run an X client:

~ # /etc/init.d/net.eth1 start
~ # /usr/sbin/sshd

Start PuTTY in Windows and log in as user.

~$ export DISPLAY=
~$ xterm


1. In the IP addresses , 37, 10 and 20 are arbitrary. I took them from the examples on the Network page. 2. In my Gentoo image there was no eth1 device, so I had to generate it myself: cd /etc/init.d ln -s ./net.lo net.eth1 3. In Gentoo, I couldn't get colinux to open the display, without using ssh. There was no ssh host key, so I had to generate it myself: ssh-keygen -b 1024 -f /etc/ssh_host_key -N

CONF for Networking with SLIRP, port forwarding, and COFS for 0.7.1

First off, this is my first Wiki entry ever, so please pardon my n00b-ness, :)

I've been using Linux for almost 12 years, and Cygwin for about 5 and so the discovery of coLinux was very exicting for a geek like myself.

I've got coLinux running on my Dell laptop, which alternates from a wireless home network with a static IP Address, a wired work network with a DHCP IP Address, and a wireless work network with a DHCP IP Address. I needed a way to keep things simple, without having to add even more networking components such as TAP, the MS Loopback Adapter, bridging network devices, or anything else for that matter.

I chose to stick with just a SLIRP setup, but still wanted to take advantage of things like a native Linux version of SSH, Apache, etc. that I could use for development purposes, as well as giving outside users remote access to my laptop when necessary.

My Windows laptop c:\windows\system32\drivers\etc\hosts file:

# Default entry, loopback adapter:   localhost               localhost

# Secondary entry, this is my coLinux box:   kraden

# Home network
## Router   gateway
## Desktop   desktop
## The boys' media center PC   theboys
## Laptop, static wireless IP Address    koloth
## u/stairs WAP      wap1
## d/stairs WAP      wap2

I've got Fedora release 7 (Moonshine), Linux 2.6.12-co-0.7.1 #1 Sat Jul 14 12:13:49 UTC 2007 i686 i686 i386 GNU/Linux, running under coLinux.

My coLinux configuration file:

# Fedora 7 configuration file
#  colinux-daemon @ fedora.conf
#  Full list of config params is listed in colinux-daemon.txt.
#  eth0=slirp,,tcp:22:22

cobd0="D:\Program Files\coLinux\Fedora-7.img"
cobd1="D:\Program Files\coLinux\swap.img"

# Export my home directory for use under coLinux

# Map port 22 and port 80 so that we can pass traffic through
# from the host PC

My coLinux /etc/hosts file:

# Loopback adapter
#       localhost.localdomain     localhost

# coLinux network
## "Host PC" (aka, laptop)     hostpc
## coLinux eth0     kraden

# Home network
## Router   gateway
## Desktop   desktop
## The boys' media center PC   theboys
## Laptop, static wireless IP Address    koloth
## u/stairs WAP      wap1
## d/stairs WAP      wap2

The /etc/sysconfig/iptables file from coLinux/Fedora:

# IPTables rules
-A INPUT -i lo -j ACCEPT 
-A INPUT -s -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j DROP 

## Restrict access to port 22 to just the host PC
-A INPUT -s -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT 

## If you want to allow access to port 22 to everyone, bang out
## the above rule, unbang the following rule, then restart IPTables:
##-A INPUT -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT 

## Restrict access to port 80 to just the host PC
-A INPUT -s -p tcp -m tcp --dport 80 -m state --state NEW -j ACCEPT 

## If you want to allow access to port 80 to everyone, bang out
## the above rule, unbang the following rule, then restart IPTables:
##-A INPUT -p tcp -m tcp --dport 80 -m state --state NEW -j ACCEPT 

-A OUTPUT -o lo -j ACCEPT 


The /etc/fstab file from coLinux/Fedora:

/dev/cobd0        /           ext3    defaults        1 1
tmpfs             /dev/shm    tmpfs   defaults        0 0
devpts            /dev/pts    devpts  gid=5,mode=620  0 0
sysfs             /sys        sysfs   defaults        0 0
proc              /proc       proc    defaults        0 0
/dev/cobd1        swap        swap    defaults        0 0

cofs0   /home/bossman/.windows   cofs   uid=bossman,gid=bossman,dmask=0700,fmask=0600

And finally, the /etc/ssh/sshd_config file from coLinux/Fedora:

#       $OpenBSD: sshd_config,v 1.74 2006/07/19 13:07:10 dtucker Exp $

# This is the sshd server system-wide configuration file.  See
# sshd_config(5) for more information.

# This sshd was compiled with PATH=/usr/local/bin:/bin:/usr/bin

# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented.  Uncommented options change a
# default value.

Port 22
Protocol 2

# SyslogFacility
#  Gives the facility code that is used when logging messages from sshd(8).  The possible values are:
#  default is AUTH.
SyslogFacility AUTHPRIV

StrictModes yes
UsePrivilegeSeparation yes
AuthorizedKeysFile      .ssh/authorized_keys

# Only allow my user account SSH access
AllowUsers bossman

PermitRootLogin no
PermitEmptyPasswords no

# Disable password auth, as we're only going to allow
# private/public key auth.
PasswordAuthentication no

PubkeyAuthentication yes
RSAAuthentication no
GSSAPIAuthentication no
GSSAPICleanupCredentials no
ChallengeResponseAuthentication no
UsePAM no


AllowTcpForwarding no
X11Forwarding yes

Subsystem       sftp    /usr/libexec/openssh/sftp-server

With this setup my laptop and my coLinux can always communicate, even if I don't have a network connection at all. I mount the COFS file system under my /home/bossman/.windows directory upon bootup of coLinux which is running as a system service on my laptop. But if you didn't want to run things on startup, you could use the following from a command prompt or shortcut:

colinux-daemon.exe @fedora.conf

With my home directory under Windows being mounted within coLinux, it allows me to access the same files, in the same locations as I do from a shell prompt under Cygwin:

drwx------ 6 bossman bossman 4.0K 2007-12-21 15:16 ./
drwxr-xr-x 4 root    root    4.0K 2007-12-18 10:33 ../
lrwxrwxrwx 2 bossman bossman 4.0K 2007-12-24 09:59 .nano -> .windows/.nano/
lrwxrwxrwx 2 bossman bossman 4.0K 2007-12-18 12:26 .nedit -> .windows/.nedit/
lrwxrwxrwx 2 bossman bossman 4.0K 2007-12-21 09:25 .ssh -> .windows/.ssh/
drwx------ 1 bossman bossman    0 2007-12-21 15:15 .windows/
-r-------- 1 bossman bossman 2.2K 2007-12-21 15:05 .aliases
-r-------- 1 bossman bossman 2.7K 2007-12-21 15:16 .aliases,v
-rw------- 1 bossman bossman  38K 2007-12-24 10:02 .bash_history
-r-------- 1 bossman bossman   33 2007-12-04 22:17 .bash_logout
-r-------- 1 bossman bossman  248 2007-12-21 09:37 .bash_logout,v
-r-------- 1 bossman bossman 2.7K 2007-12-20 19:15 .bash_profile
-r-------- 1 bossman bossman 3.3K 2007-12-20 19:16 .bash_profile,v
-r-------- 1 bossman bossman 1.4K 2007-12-20 14:47 .bashrc
-r-------- 1 bossman bossman 1.6K 2007-12-20 14:49 .bashrc,v
lrwxrwxrwx 1 bossman bossman   21 2007-12-20 19:08 bin -> .windows/installs/bin/
lrwxrwxrwx 1 bossman bossman   18 2007-12-20 19:00 Documents -> .windows/Documents/
-r-------- 1 bossman bossman  182 2007-12-21 15:05 .inputrc
-r-------- 1 bossman bossman  525 2007-12-21 15:05 .inputrc,v
-rw------- 1 bossman bossman   40 2007-12-21 14:47 .lesshst
lrwxrwxrwx 1 bossman bossman 5.9K 2007-12-06 09:35 .nanorc -> .windows/.nanorc
lrwxrwxrwx 1 bossman bossman   19 2007-12-20 16:37 .terminfo -> .windows/.terminfo/
lrwxrwxrwx 1 bossman bossman   12 2007-12-20 19:01 tmp -> .windows/tmp/

This gives me the ability to quickly move files back and forth between coLinux and Windows.

Hope this info is helpful to folks, :)

To the developers of coLinux. You's all seriously rock! coLinux is the greatest little gem in quite a long time, :)

MassTranslated on 25 Dec 2004.

ManuallyAdjusted on 25 Dec 2004. MassTranslated on Sun Apr 23 17:36:57 UTC 2006

Community content is available under CC-BY-SA unless otherwise noted.