CoLinux(CooperativeLinux的缩写)是第一种免费使用和开源的解决方案,它让Linux更好的运行在MicrosoftWindows本机系统下。通常的,colinux是Linux内核使自己友好的和其它操作系统共同运行在一台机器上的一条通道。下文介绍了在CoLinux中安装Ubuntu服务器的方法。
CoLinux是一个效率很高的Linux虚拟机。或许虚拟机这个名称对于CoLinux来说并不贴切,因为CoLinux下Linux并不是运行在一个类似于vmware的虚拟机中。运行在CoLinux里的Linux系统实际上是运行在一个修改过的Linux内核上,该内核作为一个应用程序与宿主Windows协同运行,这样所有的linux程序无需修改编译就直接可以运行在Win32下。由于不需要虚拟一个虚拟机,性能高且开销非常小,非常适合于配置不高的机器(cpu硬件虚拟化也不需要)。CoLinux还能以系统服务来运行,所以比较适合构造一个简单的无终端服务器(headless server)。
大家可以去colinux.org去下载最新的snapshot版本(应该是0.80测试版),根据我的经验,snapshot版本已经足够稳定了,不需要去用0.7之类过时的版本。
图省事的朋友可以直接下载安装别人做好的镜像,如红帽子debian等等。这里有已经安装好Ubuntu 9.04系统可以下载,将下载的Ubuntu-9.04-1gb.7z解压到一个文件夹,比如D:\ubuntu,同时创建一个ubuntu.cfg:
- mem=128
- kernel=vmlinux
- initrdinitrd=initrd.gz
- cobd0=D:\Ubuntu\Ubuntu-9.04.ext3.1gb.fs
- cofs0=C:\share
- eth0=slirp,,tcp:2080:80/tcp:2022:22/tcp:8080:8080
- root=/dev/cobd0
- ro
- nogui
然后打开命令行,进入colinux安装目录,运行colinux-daemon.exe -t nt @d:\Ubuntu\ubuntu.cfg启动colinux启动colinux
这里不再啰嗦每个配置语句的含义,大家可以去官方wiki(已被墙了,需要代理)或文档中去找到答案。
安装后的几个问题:
sudo不起作用
在root下运行visudo在最后加入一行
%admin ALL=(ALL) ALL
然后运行groupadd admin以及adduser xxx admin(xxx即为需要sudo的用户名)
如何以系统服务运行colinux
在命令行模式下进入colinux安装目录,运行colinux-daemon.exe –install-service Ubuntu @d:\ubuntu\ubuntu.cfg
这样服务就安装成功了,运行net start Ubuntu启动服务,然后就可以用ssh远程登录上去(建议先在命令行下测试之后用服务模式运行)。
colinux里的网口设备eth0被udev重命名成eth1或其他(udev device rename)
可以通过强制指定虚拟eth0的mac地址来避免被重命名:
查看文件/etc/udev/rules.d/70-persistent-net.rules:
- SUBSYSTEM==”net”, ACTION==”add”, DRIVERS==”?*”, ATTR{address}==”00:ff:a6:32:40:00″, ATTR{type}==”1″, KERNEL==”eth*”, NAME=”eth0″
可以看到”00:ff:a6:32:40:00″绑定到eth0,我们可以通过指定mac地址来让设备名被映射成eth0。
修改colinux的配置文件,指定网络设备的mac地址:
- eth0=slirp,00:ff:a6:32:40:00,tcp:2080:80/tcp:2022:22/tcp:8080:8080
这样每次启动colinux,Ubuntu的eth0就不会被udev改名,这种方法的好处在于不需要强制修改udev的配置文件(或者禁用udev)。
总结:
希望本文介绍的在CoLinux中安装Ubuntu服务器的方法能够对读者有所帮助,更多有关linux系统的知识还有待于读者去探索和学习。