wocaosinima 发表于 2015-4-13 12:39:48

Compiling Xen-4.4 From Source And Installing It On Ubuntu Server (Amd-64)


[*]  First of all, you should install a clean Ubuntu Server (Amd-64) on your server. (Version 14.04 is strongly recommended for the best compatibility)

[*]  Get the souce code of Xen ready by "git clone". ((If some errors occur in this step, you may check the /ect/apt/source.list and update it by running "$ sudo apt-get update")



1 $ git clone git://xenbits.xen.org/xen.git
If you have not yet install "git", please run "sudo apt-get install git" on your terminal.


1 $ cd xen
Use "git branch" to show the versions of Xen:


1 $ git branch -av
2   master                     3e2331d VT-d: suppress UR signaling for further desktop chipsets
3   remotes/origin/HEAD      -> origin/master
4   remotes/origin/master      3e2331d VT-d: suppress UR signaling for further desktop chipsets
5   remotes/origin/stable-4.02692df2 compat/gnttab: Prevent infinite loop in compat code
6   remotes/origin/stable-4.18995a94 page-alloc: scrub pages used by hypervisor upon freeing
7   remotes/origin/stable-4.27bcdeb9 update Xen version to 4.2.5
8   remotes/origin/stable-4.3a153d8a update Xen version to 4.3.3
9   remotes/origin/stable-4.4be84c34 evtchn: check control block exists when using FIFO-based events
10   remotes/origin/staging   3e2331d VT-d: suppress UR signaling for further desktop chipsets
11   remotes/origin/staging-4.0 2692df2 compat/gnttab: Prevent infinite loop in compat code
12   remotes/origin/staging-4.1 8995a94 page-alloc: scrub pages used by hypervisor upon freeing
13   remotes/origin/staging-4.2 7bcdeb9 update Xen version to 4.2.5
14   remotes/origin/staging-4.3 a153d8a update Xen version to 4.3.3
15   remotes/origin/staging-4.4 be84c34 evtchn: check control block exists when using FIFO-based events
  Checkout to "stable-4.4" and create a new branch named "netopt" and then checkout to it:



1 $ git checkout stable-4.4
2 Switched to branch 'stable-4.4'
3 $ git branch netopt
4 $ git checkout netopt
5 Switched to branch 'net opt'
[*]  Before compiling the source code of Xen, you must install the dependencies: (If some errors occur in this step, you may check the /ect/apt/source.list and update it by running "$ sudo apt-get update")



1 $ sudo apt-get install build-essential
2 $ sudo apt-get install bcc bin86 gawk bridge-utils iproute libcurl3 libcurl4-openssl-dev bzip2 module-init-tools transfig tgif
3 $ sudo apt-get install texinfo texlive-latex-base texlive-latex-recommended texlive-fonts-extra texlive-fonts-recommended pciutils-dev mercurial
4 $ sudo apt-get install make gcc libc6-dev zlib1g-dev python python-dev python-twisted libncurses5-dev patch libvncserver-dev libsdl-dev libjpeg-dev
5 $ sudo apt-get install iasl libbz2-dev e2fslibs-dev git-core uuid-dev ocaml ocaml-findlib libx11-dev bison flex xz-utils libyajl-dev
6 $ sudo apt-get install gettext pandoc markdown python-dev
7 $ sudo apt-get install libperl-dev libgtk2.0-dev libaio-dev gcc-multilib
[*]  Now you can compile the source code and install Xen: (Note that this step takes a long time. Be patient!)



1 $ ./configure
2 $ make world
3 $ sudo make install
[*]  After step 4, Xen is already successfully installed on your machine. However, some post-installation operations is necessary:
  You can enable automatic start of Xen Project services on system startup:



1 $ sudo update-rc.d xencommons defaults 19 18
2 $ sudo update-rc.d xendomains defaults 21 20
3 $ sudo update-rc.d xen-watchdog defaults 22 23
  By running "$ ls /etc/init.d/", you can find "xencommons", "xendomains" and "xen-watchdog". Note that Starting with Xen-4.3, "xend" is abandoned and replace by "xl".
  You also need to make some changes to "/boot/grub/grub.cfg" to correctly boot to xen.gz:



1 $ sudo update-grub
2 $ sudo vim /boot/grub/grub.cfg
  Modify the grub default option from "0" to "2": set default="2" (The option "2" normally locates the menuentry of "xen.gz")

[*]  Reboot the Ubuntu Server: (Now your machine will automatically boot from Xen's core)



1 $ sudo reboot
[*]  You can run "sudo xl list" to test whether Xen is running correctly. If some errors occur, try to add a soft link to "libxenctrl.so.4.4":



1 $ ln -s /usr/local/lib/libxenctrl.so.4.4 libxenctrl.so.4.4
2 $ sudo ldconfig
  Then restart service xencommons:



1 $ sudo service xencommons start/restart
  or:



1 $ sudo /etc/init.d/xencommons start/restart
Congradulations! All steps are completed and now you can create a virtual machine by "sudo xl create **".
页: [1]
查看完整版本: Compiling Xen-4.4 From Source And Installing It On Ubuntu Server (Amd-64)