Welcome to my page on install and configure colinux (Cooperative Linux) under Microsoft Windows XP and 2003 Server.

For a safer configuration I have used a Windows system with two networks cards. The first to bind and run Windows services, the other to provide network’s connectivity dedicated to the colinux virtual system. The net cards have two different IP of the same network (netmask 255.255.255.0).

– download and install colinux (all default preferences on install wizard’s are a good start point…)

– get from the download page link of the colinux homepage a root fs image. I have downloaded the image of Debian Linux 3.0 (Debian-3.0r2.ext3-mit-backports.1gb.bz2). Extract the image into colinux installation’s directory.

– go to colinux installation’s directory and copy the file defaul.colinux.xml to debian3.xml. Edit debian3.xml and change these lines:

from: <block_device index=“0” path=“DosDevicesc:coLinuxroot_fs” enabled=“true” />
to: <block_device index=“0” path=“DosDevicesc:program filescoLinuxDebian-3.0r2.ext3-mit-backports.1gb” enabled=“true” />
(Note: This must be the path of the OS image file)from: <block_device index=“1” path=“DosDevicesc:coLinuxswap_device” enabled=“true” />
to: <block_device index=“1” path=“DosDevicesc:program filescoLinuxswap.img” enabled=“true” />
(Note: This must be the path of the swap image file)from: <memory size=“64” />
to: <memory size=“256” />
(Note: This is the total amount of ram for the virtual machine)from: <network index=“0” type=“tap” />
to: <network index=“0” type=“tap” name=“Local Area Connection 3” />
(Note: Here you need to put the TAP-Win32 Adapter name)

– with a Unix system create a empty file-image with the dd command:
# dd if=/dev/zero of=swap.img bs=1024k count=256
run mkswap on the created image…
# mkswap swap.img
compress it with tar and copy to the Windows system. Then extract the image to colinux installation’s directory.

– on the Windows system go to the network properties and select with the ctrl key pressed the second real network card and the new TAP-Win32 Adapter (a virtual NIC added by the colinux installation wizard’s). Then right click on the double selection and make a Bridge.

Colinux/Windows pre bridge Colinux/Windows post bridge– open a command prompt (Start -> Run -> cmd) and go to the colinux installation directory. Run this command:
# colinux-daemon.exe -c debian3.xml
The Cooperative Linux console will appear with a booting Debian Linux 3.0.
Colinux Console
At the login prompt type root with password root. Check the network with the ifconfig command and configure eth0 if it’s not already configured…
# ifconfig eth0 192.168.0.10 netmask 255.255.255.0
then add a default gateway
# route add default gw 192.168.0.254
Edit /etc/resolv.conf adding your DNS servers and change the root password with one more secure…
# passwd root

– You can also create a Windows service that start and stop the colinux virtual machine like any other windows service (at boot, or manual, etc…). Go to colinux installation’s directory and run…
# colinux-daemon.exe -c debian.xml –install-service “Cooperative Linux Debian”

You have to check your installation path, network interface name and networks address to fit your LAN and your Windows system to get a working configuration for you. The linux virtual system is like a real machine, so you can use it like every linux (Debian Linux, in this example).
It’s not too difficult, anyway πŸ™‚

So now you can use linux everywhere, even on Windows systems!!! πŸ˜‰

PS: for this tutorial I have used coLinux-0.6.2.exe. To edit files I suggest to use a more powerful editor than notepad. The free for personal use EditPad Lite, is a nice choice.

24 Comments

Zava · July 20, 2005 at 16:23

Ti ringrazio tantissimo per questa semplice guida all’ installazione e configurazione di Colinux !

Io ero fermo alla password di root….

Lorenzo Balan · November 17, 2005 at 16:50

Hi Paolo,

very good information, i’m a newbie to this linux OS and especially over windows. I beleive that i followed your instructions to the letter, but its telling me that i need to specify a valid “Root Device”. following is the result when running the command.

C:Program FilescoLinux>colinux-daemon.exe -c debian3.xml
Cooperative Linux Daemon, 0.6.2
Compiled on Sat Feb 5 10:19:28 2005

auto selecting TAP
found TAP device named “Local Area Connection”
Linux version 2.6.10-co-0.6.2 (karrde@callisto.yi.org) (gcc version 3.3.5 (Debia
n 1:3.3.5-8)) #5 Sat Feb 5 10:19:16 IST 2005
opening TAP: “Local Area Connection”
driver version 8.1
256MB LOWMEM available.
enabling TAP…
initrd enabled: start: 0xcfea2000 size: 0x0015db27)
On node 0 totalpages: 65536
DMA zone: 0 pages, LIFO batch:1
Normal zone: 65536 pages, LIFO batch:16
HighMem zone: 0 pages, LIFO batch:1
Built 1 zonelists
Kernel command line: root=/dev/cobd0
Initializing CPU#0
Setting proxy interrupt vectors
PID hash table entries: 2048 (order: 11, 32768 bytes)
Using cooperative for high-res timesource
Console: colour CoCON 80×25
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Memory: 254592k/262144k available (1502k kernel code, 0k reserved, 548k data, 10
4k init, 0k highmem)
Calibrating delay loop… 475.13 BogoMIPS (lpj=2375680)
Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
CPU: After generic identify, caps: bfebfbff 00000000 00000000 00000000
CPU: After vendor identify, caps: bfebfbff 00000000 00000000 00000000
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 512K
CPU: After all inits, caps: bfebfbff 00000000 00000000 00000080
CPU: Intel(R) Xeon(TM) CPU 2.60GHz stepping 07
Enabling fast FPU save and restore… done.
Enabling unmasked SIMD FPU exception support… done.
Checking ‘hlt’ instruction… OK.
checking if image is initramfs…it isn’t (no cpio magic); looks like an initrd
Freeing initrd memory: 1398k freed
NET: Registered protocol family 16
devfs: 2004-01-31 Richard Gooch (rgooch@atnf.csiro.au)
devfs: boot_options: 0x0
cofuse init 0.1 (API version 2.2)
Initializing Cryptographic API
serio: cokbd at irq 1
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
elevator: using anticipatory as default io scheduler
cobd: loaded (max 32 devices)
loop: loaded (max 8 devices)
conet: loaded (max 16 devices)
conet0: initialized
mice: PS/2 mouse device common for all mice
input: AT Translated Set 2 keyboard on cokbd
NET: Registered protocol family 2
IP: routing cache hash table of 2048 buckets, 16Kbytes
TCP: Hash tables configured (established 16384 bind 32768)
NET: Registered protocol family 1
NET: Registered protocol family 17
RAMDISK: Compressed image found at block 0
EXT2-fs warning: checktime reached, running e2fsck is recommended
VFS: Mounted root (ext2 filesystem).
VFS: Cannot open root device “cobd0” or unknown-block(117,0)
Please append a correct “root=” boot option
Kernel panic – not syncing: VFS: Unable to mount root fs on unknown-block(117,0)

Much appericiate your help and assistance.
Lorenzo

Paolo · November 17, 2005 at 18:17

Hi Lorenzo,
I suppose that you don’t have set correctly the block_device index=Β“0? config parameter. Double check your path into config file! πŸ™‚
Have you uncompressed the system image file?
Maybe, you can post your config file, writing down your installation path…

Bye!

Lorenzo Balan · November 18, 2005 at 01:02

Hi Paolo, Thanks i found my mistake; when editing the debian-3.xml file i had put in wrong information as to the file name. (typo). i have it up and running but i’m still unable to ping to the internet.
if i unbridge the network i’m able to ping from regular dos prompt.
this is my scenario.
i have 2 network card, attached to the internet on the same lan both have access to the internet i have bridged 1 connection to the TAP-WIN32 adapter and run debian.
all connects good but i’m still unable to ping internet.

here is the result of the command.
P.S. i had changed location when i saw my error, but thats no problem.

C:coLinux>colinux-daemon.exe -c debian-3.xml
Cooperative Linux Daemon, 0.6.2
Compiled on Sat Feb 5 10:19:28 2005

auto selecting TAP
found TAP device named “Local Area Connection 3”
opening TAP: “Local Area Connection 3”
driver version 8.1
enabling TAP…
Linux version 2.6.10-co-0.6.2 (karrde@callisto.yi.org) (gcc version 3.3.5 (Debia
n 1:3.3.5-8)) #5 Sat Feb 5 10:19:16 IST 2005
256MB LOWMEM available.
initrd enabled: start: 0xcfea2000 size: 0x0015db27)
On node 0 totalpages: 65536
DMA zone: 0 pages, LIFO batch:1
Normal zone: 65536 pages, LIFO batch:16
HighMem zone: 0 pages, LIFO batch:1
Built 1 zonelists
Kernel command line: root=/dev/cobd0
Initializing CPU#0
Setting proxy interrupt vectors
PID hash table entries: 2048 (order: 11, 32768 bytes)
Using cooperative for high-res timesource
Console: colour CoCON 80×25
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Memory: 254592k/262144k available (1502k kernel code, 0k reserved, 548k data, 10
4k init, 0k highmem)
Calibrating delay loop… 51.50 BogoMIPS (lpj=257536)
Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
CPU: After generic identify, caps: bfebfbff 00000000 00000000 00000000
CPU: After vendor identify, caps: bfebfbff 00000000 00000000 00000000
CPU: Trace cache: 12K uops, L1 D cache: 8K
CPU: L2 cache: 512K
CPU: After all inits, caps: bfebfbff 00000000 00000000 00000080
CPU: Intel(R) Xeon(TM) CPU 2.60GHz stepping 07
Enabling fast FPU save and restore… done.
Enabling unmasked SIMD FPU exception support… done.
Checking ‘hlt’ instruction… OK.
checking if image is initramfs…it isn’t (no cpio magic); looks like an initrd
Freeing initrd memory: 1398k freed
NET: Registered protocol family 16
devfs: 2004-01-31 Richard Gooch (rgooch@atnf.csiro.au)
devfs: boot_options: 0x0
cofuse init 0.1 (API version 2.2)
Initializing Cryptographic API
serio: cokbd at irq 1
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
elevator: using anticipatory as default io scheduler
cobd: loaded (max 32 devices)
loop: loaded (max 8 devices)
conet: loaded (max 16 devices)
conet0: initialized
mice: PS/2 mouse device common for all mice
input: AT Translated Set 2 keyboard on cokbd
NET: Registered protocol family 2
IP: routing cache hash table of 2048 buckets, 16Kbytes
TCP: Hash tables configured (established 16384 bind 32768)
NET: Registered protocol family 1
NET: Registered protocol family 17
RAMDISK: Compressed image found at block 0
EXT2-fs warning: checktime reached, running e2fsck is recommended
VFS: Mounted root (ext2 filesystem).
ReiserFS: cobd0: warning: sh-2021: reiserfs_fill_super: can not find reiserfs on
cobd0
kjournald starting. Commit interval 5 seconds
EXT3 FS on cobd0, internal journal
EXT3-fs: recovery complete.
EXT3-fs: mounted filesystem with ordered data mode.
EXT3 FS on cobd0, internal journal
EXT3-fs: mounted filesystem with ordered data mode.
VFS: Mounted root (ext3 filesystem).
Trying to move old root to /initrd … okay
Freeing unused kernel memory: 104k freed
kjournald starting. Commit interval 5 seconds
EXT3 FS on cobd0, internal journal

Paolo · November 22, 2005 at 16:39

The config parameter network index=Β“0? type=Β“tapΒ” name=Β“Local Area Connection 3? it’s very important. Are you sure that the name Local Area Connection 3 is the same of your bridged connection? Have you tried to telnet some host (eg. telnet http://www.google.com 80)?
Ping sometimes require permissions that bridging can’t grant.
(you can find some others hints here)

Venkata Thiagarajan · January 9, 2006 at 21:37

Hi,

Thanks for sharing the tips, it worked without a glitch… It is a great product.

Simon John · April 18, 2006 at 09:23

Hi,
I hv installed two colinux (with debian-fs) on Win-XP with two different TAP-Win32 for each colinux.
Now WinXP is able to ping the two colinux and both colinux are also able to ping WinXP.
“BUT — the colinux are not able to ping the other colinux.”

Can anyone help me, in order to establish a connection between the two colinux on my Win-XP.

Thanks

Clint · June 2, 2006 at 15:13

I simply cannot get this to work. I must have missed something but I cant see it, so I’m looking for other eyes to take a look and tell me where I’m wrong, please.

I continually get …

daemon: exit code 88064401
daemon: error – CO_RC_ERROR_ERROR, line 401, file colinux/user/config.o (64)

… or similar. The colinux site is adamant that something in my config file is wrong to be getting this message.

My file looks like …

–>

ro root=/dev/cobd0

Can you see what I’ve missed ?

Thanks,

Clint · June 2, 2006 at 15:14

–>

ro root=/dev/cobd0/colinux

Paolo · June 3, 2006 at 12:42

Hi Clint,
have you double checked the config file (especially any path)?
Are you running colinux with administrator privileges?

cu

Clint · June 5, 2006 at 10:42

Here is the config file with any’s

colinux
block_device index=”0″ path=”DosDevicesC:coLinuxDebian-3.0r2.ext3-mit-backports.1gb” enabled=”true”
block_device index=”1″ path=”DosDevicesc:coLinuxswap.img” enabled=”true”
bootparams ro root=devcobd0 bootparams
image path=”vmlinux”
memory size=”64″
network index=”0″ type=”tap” name=”Local Area Connection 4″
colinux

Clint · June 5, 2006 at 16:12

I’m using colinux-0.6.3 installed to c:colinx
I downloaded the debian image and unzipped it into the c:colinux directory
I downloaded a 256mb swap image and unzipped it into the c:colinux directory.
I installed Winpcap 3.1 as requested by the colinux install and I bridged my TAP network interface with my LAN interface.

Together with the above config file (missing the arrow brackets to be able to post it) I get the above error.

I have also added ” /noexecute=Always Off /NOPAE” to my boot.ini as suggested. To no avail.

Clint · June 9, 2006 at 10:16

It is now working. I had to re-add

?xml version=”1.0″ encoding=”UTF-8″?

to the beginning of the xml file and then add Β” /noexecute=Always Off /NOPAEΒ” to my boot.ini

Paolo · June 9, 2006 at 12:00

Sorry for my missing reply, but I’m very busy this spring πŸ™‚

Nice to see all working now!

bye

wowow · July 10, 2006 at 19:35

Hi,
I got this err msg
process `nslookup’ is using obsolete setsockopt SO_BSDCOMPAT

(firefox-bin:3479): Gtk-WARNING **: cannot open display:

seems like the problem with graphic config, anyone can give me a clue ?

Thanks

Paolo · July 10, 2006 at 20:48

Very strange,
nslookup is a console program and the error is called from FireFox (firefox-bin:3479). Try to connect to your Colinx with ssh (using for example putty) and run again nslookup.

wowow · July 10, 2006 at 21:37

Thanks for the reply…I was not running nslookup, nor firefox.
It happened when I run the ./sara (/usr/local/sara),and I doubted I did the setup correctly…

Trey · January 30, 2007 at 01:58

hi,

been trying to get co linux going for about 4 days now ,,, I started with topologi linux which seemed rather broken,,,

I am now using colinux 6.4 debian installed ,

i only have one network adapter and have been pulling my hair out trying to get the net work going so i can update, install kde and use x viewer

if you can help please do , running xp pro sp2 win 32 tap installed

when i share or bridge connections i lose conectivity all together.
this may be a stupid problem but im new and if people would pst tutorials in a step by step manner then explain next the world would run much more
smoothly thanx

Paolo · January 30, 2007 at 04:11

Hi Trey,
I suppose this may be a problem generated by the SP2. Can be a firewall problem, if you lost connectivity. Try disabling the windows internal firewall; this might help.

But remember that security is important: if windows firewall is your only protection from internet, if you disable it, you have a problem πŸ™‚

You can try also vmware player, now is free and can maybe easyer to setup than colinux.

bye

Thaufek · October 31, 2007 at 05:24

Hi Paolo,

greate tutorial, i am lookng for installing redhat9.0 with colinux is it possible. Is installting rh9.0 with Colinux on SATA will be a problem? ineed rh9.0 to be instaled in SATA coz i have an application that only can run on rh9.0

Thanks

Paolo · October 31, 2007 at 11:21

Hi Thaufek, thank you.
I have not tested colinx with red hat 9 and recent hardware, so I can’t really answer your question. You have to try! πŸ™‚

You can also use others virtualization software, like VMware Server http://www.vmware.com/products/server/ , VMware Player http://www.vmware.com/products/player/ or VirtualBox http://www.virtualbox.org/

Any of these software is much easier than colinux to setup and use and they are free…

Milomir · November 14, 2007 at 16:22

how can i boot in graphic mode?

Paolo Conti - WebLog » Blog Archive » Colinux in Windows XP/2003 · June 20, 2005 at 19:54

[…] di scrivere giusto quattro righe che spiegano come si installa e come si configura… >>> This entry was posted on Monday, June 20th, 2005 at 7:54 pm […]

Paolo Conti - WebLog » Blog Archive » Colinux in Windows XP/2003 · June 20, 2005 at 19:54

[…] di scrivere giusto quattro righe che spiegano come si installa e come si configura… >>> This entry was posted on Monday, June 20th, 2005 at 7:54 pm […]

Leave a Reply

Your email address will not be published. Required fields are marked *