Windows和Linux都是好東西,配置雙啟動(dòng)不難,但是有時(shí)候在Windows下面想要臨時(shí)換到Linux,總是麻煩。
以前都是用VmWare,配置使用實(shí)際硬盤,然后再Windows里面進(jìn)行啟動(dòng)另一個(gè)分區(qū)里面的Linux然后操作。
不過這樣實(shí)在是麻煩,而且VmWare占用資源也是在太大,如果配置512內(nèi)存,就要在系統(tǒng)里面直接占用掉512M內(nèi)存,即使實(shí)際上Linux根本不用那么多。
不過,前段時(shí)間發(fā)現(xiàn)了CoLinux這個(gè)好東西,可以把Linux內(nèi)核作為Windows的本地進(jìn)程運(yùn)行,不錯(cuò)不錯(cuò)。
研究了一陣子,先用從CoLinux站上提供的鏡像實(shí)驗(yàn)了下,很令我驚喜:CoLinux進(jìn)程內(nèi)存占用非常少,而且如果系統(tǒng)內(nèi)無負(fù)載的時(shí)候,CPU占用也基本為0。
然后再看了看文檔,發(fā)現(xiàn)也能使用真正分區(qū)啟動(dòng),于是改了改配置,還真的起來了!
嗯,下面就是我的配置方式了。
首先,在某個(gè)分區(qū)上裝好一個(gè)正常的Linux系統(tǒng),我用的是Debian,裝到/dev/sda2里面,配置Grub,和Windows多重啟動(dòng)。這個(gè)就不多說了。
然后,進(jìn)入Windows,到CoLinux網(wǎng)站上下載并安裝,過程中會(huì)安裝一些驅(qū)動(dòng),一路確認(rèn)就好了。安裝過程中會(huì)詢問要下載某個(gè)系統(tǒng)鏡像,如果想先試試就下,建議不用下。如果想試驗(yàn)?zāi)硞€(gè)鏡像,也可以直接到網(wǎng)站上下載的。
再然后,寫一個(gè)配置文件,比如我的Debian.conf
#指定內(nèi)核,應(yīng)該只能用CoLinux提供的這個(gè)內(nèi)核,除非下源碼來自己編譯 kernel=vmlinux
#將分區(qū)指定到CoLinux設(shè)備上,表示方式和Linux不同 #Harddisk0表示第一塊硬盤,1表示第二塊,以此類推 #Partition2表示第二個(gè)分區(qū),7表示第七個(gè)分區(qū),以此類推 #需要注意硬盤從0開始數(shù),分區(qū)從1開始數(shù) #另外,擴(kuò)展分區(qū)不算,也不分主分區(qū)和邏輯分區(qū),也就是邏輯分區(qū)不是從5開始算 #CoLinux設(shè)備號(hào)可以隨意取,我為了方便取的和Linux下的設(shè)備號(hào)一致 #可以發(fā)現(xiàn)設(shè)備號(hào)在Windows和Linux下是不一樣的 cobd2="\Device\Harddisk0\Partition2" cobd8="\Device\Harddisk0\Partition7"
#將CoLinux設(shè)備綁定到原先的設(shè)備號(hào)上 sda2=:cobd2 sda8=:cobd8
#指定root分區(qū),用的是前面綁定的設(shè)備 root=/dev/sda2
#Linux啟動(dòng)參數(shù),先設(shè)為單用戶模式 ro single
#指定initrd,應(yīng)該也是只能用CoLinux提供的 initrd=initrd.gz
#指定網(wǎng)絡(luò)方式,先使用最簡單的方式 #這種方式只能從Linux訪問Windows,如果要Windows訪問Linux,需要做端口映射 #為了使用ssh,把Linux的22端口映射到2222端口 eth0=slirp,,tcp:2222:22
|
嗯,關(guān)于分區(qū)的問題,給張示意圖:
現(xiàn)在就可以嘗試啟動(dòng)系統(tǒng)了。
打開命令行,進(jìn)入CoLinux的安裝目錄,執(zhí)行命令:
colinux-daemon.exe @Debian.conf
好了,應(yīng)該看到系統(tǒng)啟動(dòng)了吧?不過,fltk的界面真難看,現(xiàn)在可以把這個(gè)關(guān)掉(關(guān)掉這個(gè),CoLinux并不會(huì)退出,只是這個(gè)界面程序關(guān)閉而已),雙擊colinux-console-nt.exe,就可以看到一個(gè)和Windows命令行一樣的界面了。
我們現(xiàn)在是在single模式下,用root密碼進(jìn)去看看,有沒有什么不對(duì)的?
用Putty連接localhost的2222端口,怎么樣?ssh進(jìn)去了吧?如果進(jìn)不去,請(qǐng)檢查Linux里面是不是裝了sshd。
現(xiàn)在,Linux已經(jīng)可以啟動(dòng)了,但是如果我們把配置文件里面的single去掉,Linux啟動(dòng)的時(shí)候會(huì)啟動(dòng)很多圖形相關(guān)的程序,然后報(bào)很多錯(cuò)誤,怎么辦?
可以這樣,設(shè)置一個(gè)特殊的runlevel,這個(gè)level只啟動(dòng)CoLinux下面能用的東西,把X window相關(guān)的東西統(tǒng)統(tǒng)關(guān)掉。然后指定CoLinux啟動(dòng)進(jìn)入這個(gè)runlevel就好了。
我用的是init level 4,據(jù)我所知的發(fā)行版里面,這個(gè)level都沒有什么用處的,剛好給我們用了。
把init level 4里面的相關(guān)服務(wù)關(guān)掉(怎么關(guān)?apt-get install sysv-rc-conf; sysv-rc-conf),然后用halt或者shutdown –h now關(guān)機(jī)。
把上面配置文件里面的“ro single”改為
ro 4
再啟動(dòng)CoLinux就可以進(jìn)入runlevel 4。
現(xiàn)在,我們可以把CoLinux注冊(cè)成服務(wù)了。先把CoLinux關(guān)掉,然后命令行:
colinux-daemon.exe @Debian.conf --install-service CoLinux
再然后
net start CoLinux
就可以將CoLinux作為Windows服務(wù)啟動(dòng)。
我們也可以在Window服務(wù)管理界面將CoLinux設(shè)為開機(jī)自動(dòng)啟動(dòng),這樣,我們的Linux就永遠(yuǎn)在Windows下可用了,而且占用資源極少!
嗯,上面這個(gè)圖是我用tuntap網(wǎng)絡(luò)時(shí)的截圖,slirp也差不多就是了:)
還有一些其他設(shè)置,放在以后說吧:
網(wǎng)絡(luò)設(shè)置,除了slirp方式外,CoLinux還有3種網(wǎng)絡(luò)方式:tuntap,pcap-bridge和ndis-bridge
配置Xming,讓CoLinux下面的X程序在Windows下面顯示