# HG changeset patch
# User emellor@xxxxxxxxxxxxxxxxxxxxxx
# Node ID 591555bc4acbaddf7b130dbf311719bfaa087cc8
# Parent fb174770f426193a9ae6594c8f683275bbe78451
Updated to reflect new KERNELS defaults, and properly describe make install and
make dist.
diff -r fb174770f426 -r 591555bc4acb README
--- a/README Fri Apr 7 10:52:00 2006
+++ b/README Mon Apr 10 15:21:44 2006
@@ -1,158 +1,176 @@
-################################
- __ __ _____ ___
- \ \/ /___ _ __ |___ / / _ \
- \ // _ \ '_ \ |_ \| | | |
- / \ __/ | | | ___) | |_| |
- /_/\_\___|_| |_| |____(_)___/
-
-################################
-
-http://www.xensource.com/xen/about.html
-
-What is Xen?
-============
-
-Xen is a Virtual Machine Monitor (VMM) originally developed by the
-Systems Research Group of the University of Cambridge Computer
-Laboratory, as part of the UK-EPSRC funded XenoServers project. Xen
-is freely-distributable Open Source software, released under the GNU
-GPL. Since its initial public release, Xen has grown a large
-development community, spearheaded by XenSource Inc, a company created
-by the original Xen development team to build enterprise products
-around Xen.
-
-The 3.0 release offers excellent performance, hardware support and
-enterprise-grade features such as x86_32-PAE, x86_64, SMP guests and
-live relocation of VMs. This install tree contains source for a Linux
-2.6 guest; ports to Linux 2.4, NetBSD, FreeBSD and Solaris will follow
-later (and are already available for previous Xen releases).
-
-This file contains some quick-start instructions to install Xen on
-your system. For full documentation, see the Xen User Manual. If this
-is a pre-built release then you can find the manual at:
- dist/install/usr/share/doc/xen/pdf/user.pdf
-If you have a source release, then 'make -C docs' will build the
-manual at docs/pdf/user.pdf.
-
-Quick-Start Guide - Pre-Built Binary Release
-============================================
-
-[NB. Unless noted otherwise, all the following steps should be
-performed with root privileges.]
-
-1. Install the binary distribution onto your filesystem:
-
- # sh ./install.sh
-
- Among other things, this will install Xen and Xen-ready Linux
- kernel files in /boot, kernel modules and Python packages in /lib,
- and various control tools in standard 'bin' directories.
-
-2. Configure your bootloader to boot Xen and an initial Linux virtual
- machine. Note that Xen currently only works with GRUB and pxelinux
- derived boot loaders: less common alternatives such as LILO are
- *not* supported. You can most likely find your GRUB menu file at
- /boot/grub/menu.lst: edit this file to include an entry like the
- following:
-
- title Xen 3.0 / XenLinux 2.6
- kernel /boot/xen-3.0.gz console=vga
- module /boot/vmlinuz-2.6-xen root=<root-dev> ro console=tty0
- module /boot/initrd-2.6-xen.img
-
- NB: Not all kernel configs need an initial ram disk (initrd), but
- if you do specify one you'll need to use the 'module' grub directive
- rather than 'initrd'.
-
- The linux command line takes all the usual options, such as
- root=<root-dev> to specify your usual root partition (e.g.,
- /dev/hda1).
-
- The Xen command line takes a number of optional arguments described
- in the manual. The most common is 'dom0_mem=xxxM' which sets the
- amount of memory to allocate for use by your initial virtual
- machine (known as domain 0). Note that Xen itself reserves about
- 32MB memory for internal use, which is not available for allocation
- to virtual machines.
-
-3. Reboot your system and select the "Xen 3.0 / XenLinux 2.6" menu
- option. After booting Xen, Linux will start and your initialisation
- scripts should execute in the usual way.
-
-Quick-Start Guide - Source Release
-==================================
-
-First, there are a number of prerequisites for building a Xen source
-release. Make sure you have all the following installed, either by
-visiting the project webpage or installing a pre-built package
-provided by your Linux distributor:
- * GCC (preferably v3.2.x or v3.3.x; older versions are unsupported)
- * GNU Make
- * GNU Binutils
- * Development install of zlib (e.g., zlib-dev)
- * Development install of Python v2.3 or later (e.g., python-dev)
- * bridge-utils package (/sbin/brctl)
- * iproute package (/sbin/ip)
- * hotplug or udev
-
-[NB. Unless noted otherwise, all the following steps should be
-performed with root privileges.]
-
-1. Download and untar the source tarball file. This will be a
- file named xen-unstable-src.tgz, or xen-$version-src.tgz.
- You can also pull the current version from the SCMS
- that is being used (Bitkeeper, scheduled to change shortly).
-
- # tar xzf xen-unstable-src.tgz
-
- Assuming you are using the unstable tree, this will
- untar into xen-unstable. The rest of the instructions
- use the unstable tree as an example, substitute the
- version for unstable.
-
-2. cd to xen-unstable (or whatever you sensibly rename it to).
- The Linux, netbsd and freebsd kernel source trees are in
- the $os-$version-xen-sparse directories.
-
-On Linux:
-
-3. For the very first build, or if you want to destroy existing
- .configs and build trees, perform the following steps:
-
- # make KERNELS=linux-2.6-xen world
- # make install
-
- It will create and install into the dist/ directory which is the
- default install location. It will build the xen binary (xen.gz),
- and a linux kernel and modules that can be used in both dom0 and an
- unprivileged guest kernel (vmlinuz-2.6.x-xen), the tools and the
- documentation.
-
- If you don't specify KERNELS= on the make command line it will
- default to building two kernels, vmlinuz-2.6.x-xen0 and
- vmlinuz-2.6.x-xenU. These are smaller builds with just selected
- modules, intended primarilly for developers that don't like to wait
- for a -xen kernel to build. The -xenU kernel is particularly small
- as it does not contain any physical device drivers, and hence is
- only useful for guest domains.
-
- If you want to build an x86_32 PAE capable xen and kernel to work
- on machines with >= 4GB of memory, use XEN_TARGET_X86_PAE=y on the
- make command line.
-
-4. To rebuild an existing tree without modifying the config:
- # make dist
-
- This will build and install xen, kernels, tools, and
- docs into the local dist/ directory.
-
-5. To rebuild a kernel with a modified config:
-
- # make linux-2.6-xen-config CONFIGMODE=menuconfig (or xconfig)
- # make linux-2.6-xen-build
- # make linux-2.6-xen-install
-
- Depending on your config, you may need to use 'mkinitrd' to create
- an initial ram disk, just like a native system e.g.
- # depmod 2.6.12.6-xen
- # mkinitrd -v -f --with=aacraid --with=sd_mod --with=scsi_mod
initrd-2.6.12.6-xen.img 2.6.12.6-xen
+################################
+ __ __ _____ ___
+ \ \/ /___ _ __ |___ / / _ \
+ \ // _ \ '_ \ |_ \| | | |
+ / \ __/ | | | ___) | |_| |
+ /_/\_\___|_| |_| |____(_)___/
+
+################################
+
+http://www.xensource.com/xen/about.html
+
+What is Xen?
+============
+
+Xen is a Virtual Machine Monitor (VMM) originally developed by the
+Systems Research Group of the University of Cambridge Computer
+Laboratory, as part of the UK-EPSRC funded XenoServers project. Xen
+is freely-distributable Open Source software, released under the GNU
+GPL. Since its initial public release, Xen has grown a large
+development community, spearheaded by XenSource Inc, a company created
+by the original Xen development team to build enterprise products
+around Xen.
+
+The 3.0 release offers excellent performance, hardware support and
+enterprise-grade features such as x86_32-PAE, x86_64, SMP guests and
+live relocation of VMs. This install tree contains source for a Linux
+2.6 guest; ports to Linux 2.4, NetBSD, FreeBSD and Solaris will follow
+later (and are already available for previous Xen releases).
+
+This file contains some quick-start instructions to install Xen on
+your system. For full documentation, see the Xen User Manual. If this
+is a pre-built release then you can find the manual at:
+ dist/install/usr/share/doc/xen/pdf/user.pdf
+If you have a source release, then 'make -C docs' will build the
+manual at docs/pdf/user.pdf.
+
+Quick-Start Guide - Pre-Built Binary Release
+============================================
+
+[NB. Unless noted otherwise, all the following steps should be
+performed with root privileges.]
+
+1. Install the binary distribution onto your filesystem:
+
+ # sh ./install.sh
+
+ Among other things, this will install Xen and Xen-ready Linux
+ kernel files in /boot, kernel modules and Python packages in /lib,
+ and various control tools in standard 'bin' directories.
+
+2. Configure your bootloader to boot Xen and an initial Linux virtual
+ machine. Note that Xen currently only works with GRUB and pxelinux
+ derived boot loaders: less common alternatives such as LILO are
+ *not* supported. You can most likely find your GRUB menu file at
+ /boot/grub/menu.lst: edit this file to include an entry like the
+ following:
+
+ title Xen 3.0 / XenLinux 2.6
+ kernel /boot/xen-3.0.gz console=vga
+ module /boot/vmlinuz-2.6-xen root=<root-dev> ro console=tty0
+ module /boot/initrd-2.6-xen.img
+
+ NB: Not all kernel configs need an initial ram disk (initrd), but
+ if you do specify one you'll need to use the 'module' grub directive
+ rather than 'initrd'.
+
+ The linux command line takes all the usual options, such as
+ root=<root-dev> to specify your usual root partition (e.g.,
+ /dev/hda1).
+
+ The Xen command line takes a number of optional arguments described
+ in the manual. The most common is 'dom0_mem=xxxM' which sets the
+ amount of memory to allocate for use by your initial virtual
+ machine (known as domain 0). Note that Xen itself reserves about
+ 32MB memory for internal use, which is not available for allocation
+ to virtual machines.
+
+3. Reboot your system and select the "Xen 3.0 / XenLinux 2.6" menu
+ option. After booting Xen, Linux will start and your initialisation
+ scripts should execute in the usual way.
+
+Quick-Start Guide - Source Release
+==================================
+
+First, there are a number of prerequisites for building a Xen source
+release. Make sure you have all the following installed, either by
+visiting the project webpage or installing a pre-built package
+provided by your Linux distributor:
+ * GCC (preferably v3.2.x or v3.3.x; older versions are unsupported)
+ * GNU Make
+ * GNU Binutils
+ * Development install of zlib (e.g., zlib-dev)
+ * Development install of Python v2.3 or later (e.g., python-dev)
+ * bridge-utils package (/sbin/brctl)
+ * iproute package (/sbin/ip)
+ * hotplug or udev
+
+[NB. Unless noted otherwise, all the following steps should be
+performed with root privileges.]
+
+1. Download and untar the source tarball file. This will be a
+ file named xen-unstable-src.tgz, or xen-$version-src.tgz.
+ You can also pull the current version from the SCMS
+ that is being used (Bitkeeper, scheduled to change shortly).
+
+ # tar xzf xen-unstable-src.tgz
+
+ Assuming you are using the unstable tree, this will
+ untar into xen-unstable. The rest of the instructions
+ use the unstable tree as an example, substitute the
+ version for unstable.
+
+2. cd to xen-unstable (or whatever you sensibly rename it to).
+ The Linux, netbsd and freebsd kernel source trees are in
+ the $os-$version-xen-sparse directories.
+
+On Linux:
+
+3. For the very first build, or if you want to destroy existing
+ .configs and build trees, perform the following steps:
+
+ # make world
+ # make install
+
+ This will create and install onto the local machine. It will build
+ the xen binary (xen.gz), and a linux kernel and modules that can be
+ used in both dom0 and an unprivileged guest kernel (vmlinuz-2.6.x-xen),
+ the tools and the documentation.
+
+ You can override the destination for make install by setting DESTDIR
+ to some value.
+
+ The make command line defaults to building the kernel vmlinuz-2.6.x-xen.
+ You can override this default by specifying KERNELS=kernelname. For
+ example, you can make two kernels - linux-2.6.16-xen0
+ and linux-2.6.16-xenU - which are smaller builds containing only selected
+ modules, intended primarilly for developers that don't like to wait
+ for a full -xen kernel to build. The -xenU kernel is particularly small,
+ as it does not contain any physical device drivers, and hence is
+ only useful for guest domains.
+
+ To make these two kernels, simply specify
+
+ KERNELS="linux-2.6.16-xen0 linux-2.6.16-xenU"
+
+ in the make command line.
+
+ If you want to build an x86_32 PAE capable xen and kernel to work
+ on machines with >= 4GB of memory, use XEN_TARGET_X86_PAE=y on the
+ make command line.
+
+4. To rebuild an existing tree without modifying the config:
+ # make dist
+
+ This will build and install xen, kernels, tools, and
+ docs into the local dist/ directory.
+
+ You can override the destination for make install by setting DISTDIR
+ to some value.
+
+ make install and make dist differ in that make install does the
+ right things for your local machine (installing the appropriate
+ version of hotplug or udev scripts, for example), but make dist
+ includes all versions of those scripts, so that you can copy the dist
+ directory to another machine and install from that distribution.
+
+5. To rebuild a kernel with a modified config:
+
+ # make linux-2.6-xen-config CONFIGMODE=menuconfig (or xconfig)
+ # make linux-2.6-xen-build
+ # make linux-2.6-xen-install
+
+ Depending on your config, you may need to use 'mkinitrd' to create
+ an initial ram disk, just like a native system e.g.
+ # depmod 2.6.12.6-xen
+ # mkinitrd -v -f --with=aacraid --with=sd_mod --with=scsi_mod
initrd-2.6.12.6-xen.img 2.6.12.6-xen
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|