歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> [Xen] Ubuntu 10.04 x86 安裝 Xen 4.1 和 dom0

[Xen] Ubuntu 10.04 x86 安裝 Xen 4.1 和 dom0

日期:2017/2/28 15:59:26   编辑:Linux教程

經過一天的折騰,總算把xen 4.1和dom0安裝成功了,本文主要介紹如何在Ubuntu 10.04 x86上安裝xen 4.1和dom0,dom0分為源碼安裝和deb包安裝兩種方法。

首先安裝Xen

1.安裝依賴

sudo apt-get install bcc bin86 gawk bridge-utils iproute libcurl3 libcurl4-openssl-dev bzip2 module-init-tools
transfig tgif texinfo texlive-latex-base texlive-latex-recommended texlive-fonts-extra 
texlive-fonts-recommended pciutils-dev mercurial build-essential make gcc libc6-dev zlib1g-dev python 
python-dev python-twisted libncurses5-dev patch libvncserver-dev libsdl-dev libjpeg62-dev iasl libbz2-dev 
e2fslibs-dev git-core uuid-dev ocaml ocaml-findlib libx11-dev bison flex xz-utils gcc-multilib 
liblzma-dev lzma lzma-dev python-lzma -Vy

2.下載源碼,解壓,進入源碼的目錄

3.編譯

make xen

make tools

make stubdom

4.安裝

sudo make install-xen

sudo make install-tools PYTHON_PREFIX_ARG=

sudo make install-stubdom

大功告成,編譯和安裝xen都沒有什麼問題,照著指南一步一步做就行了。。。

接下來安裝dom0,首先是源碼安裝

1.clone源碼,進入目錄

git clone git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen.git linux-2.6-xen cd linux-2.6-xen

說明:這裡和參考文章有些不同,git clone下來的linux kernel查看分支時已經處於xen/stable-2.6.32.x狀態,所以不需要reset HEAD和checkout,直接編譯即可。

2.生成.config文件,編譯安裝內核

這裡我選擇了XenParavirtOps文章中提供的2.6.32.27的配置文件,進入內核目錄執行以下命令

make oldconfig

make menuconfig (if you need to change something)

make bzImage

make modules

sudo make modules_install

sudo cp -a .config /boot/config-version

sudo cp -a System.map /boot/System.map-version

sudo cp -a arch/x86/boot/bzImage /boot/vmlinuz-version

sudo update-initramfs -c -k 2.6.32.40
3.更新grub
sudo gedit /etc/grub.c/40_custom,添加如下內容
menuentry "Xen 4.1 with pv_ops dom0 2.6.32.40" { insmod ext2 set root='(hd0,1)' search --no-floppy --fs-uuid --set 17051bcf-3d83-422d-bede-b559db7095b6 multiboot /boot/xen.gz module /boot/vmlinuz-2.6.32.40 root=UUID=17051bcf-3d83-422d-bede-b559db7095b6 ro quiet splash module /boot/initrd.img-2.6.32.40 }
保存,更新grub.cfg,重啟,問題又來了。。。
啟動過程中出現錯誤“mount: mounting none on /dev failed: No such device”,不過順利進來了,先暫時放在一邊。

進入系統。Xen 4.1已經開始使用xl工具來管理虛擬機了,操作如下:
sudo /etc/init.d/xencommons start
sudo xl list

Name ID Mem VCPUs State Time(s) 
Domain-0 0 3583 4 r----- 336.0

接下來介紹利用包安裝dom0的方式
需要去debian的官網下載linux-image-2.6.32-5-xen-686和linux-base (>= 2.6.32-31)兩個deb包。這是最小依賴。
dpkg安裝,這時/boot目錄和/lib/modules/目錄下就包含對應的啟動項和模塊了,最後更新grub,在/etc/grub.d/40_csutom添加如下內容:
menuentry "Xen 4.1 with Debian 6 kernel 2.6.32-5" { insmod ext2 set root='(hd0,1)' search --no-floppy --fs-uuid --set 17051bcf-3d83-422d-bede-b559db7095b6 multiboot /boot/xen.gz module /boot/vmlinuz-2.6.32-5-xen-686 root=UUID=17051bcf-3d83-422d-bede-b559db7095b6 ro quiet splash module /boot/initrd.img-2.6.32-5-xen-686 }

更新grub,重啟,進入系統,一切順利,啟動xencommons,出現如下錯誤“Starting xenstored...FATAL: Failed to open evtchn device: No such file or directory”,原來Debian包把xen-evtchn編譯成了模塊,所以需要先加載xen-evtchn

sudo modprobe xen-evtchn

好了xl又能用了,而且這個包比自己編譯出來的內核小的多,70M左右,自己編的有500多M,顯示效果跟裸機沒什麼區別,但是自己編的字體都變了形。。。

目前發現update-grub在這個內核中不能用,不知道為啥,慢慢研究。。

下一步,啟動pv,安裝vnc啟動HVM。。。

Copyright © Linux教程網 All Rights Reserved