ia64/xen-unstable

changeset 1065:9acedaeb47e2

bitkeeper revision 1.704 (402168a1BLT2wwYBacX-IyROkoi8Rw)

Delete old HOWTO for Xen 1.1
author iap10@labyrinth.cl.cam.ac.uk
date Wed Feb 04 21:48:17 2004 +0000 (2004-02-04)
parents cdc8a05cc2af
children 7eb512e5106d d25e0e228b40
files .rootkeys docs/Xeno-1.1-HOWTO.txt
line diff
     1.1 --- a/.rootkeys	Wed Feb 04 14:46:46 2004 +0000
     1.2 +++ b/.rootkeys	Wed Feb 04 21:48:17 2004 +0000
     1.3 @@ -8,7 +8,6 @@ 3f5ef5a2l4kfBYSQTUaOyyD76WROZQ README.CD
     1.4  3f69d8abYB1vMyD_QVDvzxy5Zscf1A TODO
     1.5  3f9e7d53iC47UnlfORp9iC1vai6kWw docs/Makefile
     1.6  40083bb4LVQzRqA3ABz0__pPhGNwtA docs/VBD-HOWTO.txt
     1.7 -3fafbf11blCNItRsHe0UHwyu5CCDkw docs/Xeno-1.1-HOWTO.txt
     1.8  4021053fmeFrEyPHcT8JFiDpLNgtHQ docs/Xeno-1.2-HOWTO.txt
     1.9  3f9e7d60PWZJeVh5xdnk0nLUdxlqEA docs/eps/xenlogo.eps
    1.10  3f9e7d63lTwQbp2fnx7yY93epWS-eQ docs/figs/dummy
     2.1 --- a/docs/Xeno-1.1-HOWTO.txt	Wed Feb 04 14:46:46 2004 +0000
     2.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.3 @@ -1,252 +0,0 @@
     2.4 -###########################################
     2.5 -Xeno HOWTO
     2.6 -
     2.7 -University of Cambridge Computer Laboratory
     2.8 -
     2.9 -http://www.cl.cam.ac.uk/netos/xen
    2.10 -#############################
    2.11 -
    2.12 -
    2.13 -Get Xeno Source Codes
    2.14 -==========================
    2.15 -
    2.16 -The public master BK repository for the 1.1 release lives at:
    2.17 -'bk://xen.bkbits.net/xeno-1.1.bk'
    2.18 -
    2.19 -To fetch a local copy, first download the BitKeeper tools at:
    2.20 -http://www.bitmover.com/download with username 'bitkeeper' and
    2.21 -password 'get bitkeeper'.
    2.22 -
    2.23 -Then install the tools and then run:
    2.24 -# bk clone bk://xen.bkbits.net/xeno-1.1.bk
    2.25 -
    2.26 -Under your current directory, a new directory named 'xeno-1.1.bk' has
    2.27 -been created, which contains all the source codes for Xen and
    2.28 -XenoLinux. 
    2.29 -
    2.30 -To get newest changes to the repository, run
    2.31 -# cd xeno-1.1.bk
    2.32 -# bk pull
    2.33 -
    2.34 -
    2.35 -Build Xen
    2.36 -=============================
    2.37 -
    2.38 -Hint: To see how to build Xen and all the control tools, inspect the
    2.39 -tools/misc/xen-clone script in the BK repository. This script can be
    2.40 -used to clone the repostitory and perform a full build.
    2.41 -
    2.42 -To build Xen manually:
    2.43 -
    2.44 -# cd xeno-1.1.bk/xen
    2.45 -# make clean
    2.46 -# make
    2.47 -
    2.48 -This will (should) produce a file called 'image' in the current
    2.49 -directory.  This is the ELF 32-bit LSB executable file of Xen.  You
    2.50 -can also find a gzip version, named 'image.gz'.
    2.51 -
    2.52 -To install the built files on your Xenoserver under /usr, type 'make
    2.53 -install' at the root of the BK repository. You will need to be root to
    2.54 -do this!
    2.55 -
    2.56 -Hint: There is also a 'make dist' rule which copies built files to an
    2.57 -install directory just outside the BK repo; if this suits your setup,
    2.58 -go for it.
    2.59 -
    2.60 -
    2.61 -Build XenoLinux
    2.62 -==============================
    2.63 -
    2.64 -This is a little more involved since the repository only contains a
    2.65 -"sparse" tree -- this is essentially an 'overlay' on a standard linux
    2.66 -kernel source tree. It contains only those files currently 'in play'
    2.67 -which are either modified versions of files in the vanilla linux tree,
    2.68 -or brand new files specific to XenoLinux.
    2.69 -
    2.70 -So, first you need a vanilla linux-2.4.22 tree, which is located at:
    2.71 -http://www.kernel.org/pub/linux/kernel/v2.4
    2.72 -
    2.73 -Then:
    2.74 -  # mv linux-2.4.22.tar.gz /xeno-1.1.bk
    2.75 -  # cd /xeno-1.1.bk
    2.76 -  # tar -zxvf linux-2.4.22.tar.gz
    2.77 -
    2.78 -You'll find a new directory 'linux-2.4.22' which contains all
    2.79 -the vanilla Linux 2.4.22 kernel source codes.
    2.80 -
    2.81 -Hint: You should choose the vanilla linux kernel tree that has the
    2.82 -same version as the "sparse" tree.
    2.83 -
    2.84 -Next, you need to 'overlay' this sparse tree on the full vanilla Linux
    2.85 -kernel tree:
    2.86 -
    2.87 -  # cd /xeno-1.1.bk/xenolinux-2.4.22-sparse
    2.88 -  # ./mkbuildtree ../linux-2.4.22
    2.89 -
    2.90 -Finally, rename the buildtree since it is now a xenolinux buildtree. 
    2.91 -
    2.92 -  # cd /xeno-1.1.bk
    2.93 -  # mv linux-2.4.22 xenolinux-2.4.22
    2.94 -
    2.95 -Now that the buildtree is there, you can build the xenolinux kernel. 
    2.96 -
    2.97 -  # cd /xeno-1.1.bk/xenolinux-2.4.22
    2.98 -  # ARCH=xeno make xconfig   { or menuconfig, or oldconfig, or config }  
    2.99 -  # ARCH=xeno make dep bzImage
   2.100 -
   2.101 -Assuming the build works, you'll end up with
   2.102 -/xeno-1.1.bk/xenolinux-2.4.22/arch/xeno/boot/image.gz
   2.103 -This is the gzip version of XenoLinux kernel image.
   2.104 -
   2.105 -
   2.106 -Build the Domain Control Tools
   2.107 -==============================
   2.108 -
   2.109 -Under '/xeno-1.1.bk/tools', there are three sub-directories:
   2.110 -'balloon', 'xc' and 'misc', each containing
   2.111 -a group of tools. You can enter any of the four sub-directories
   2.112 -and type 'make' to compile the corresponding group of tools.
   2.113 -Or you can type 'make' under '/xeno-1.1.bk/tools' to compile
   2.114 -all the tools.
   2.115 -
   2.116 -In order to compile the control-interface library in 'xc' you must
   2.117 -have zlib and devlopment headers installed. Also you will need at
   2.118 -least Python v2.2. 
   2.119 -
   2.120 -'make install' in the tools directory will place executables and
   2.121 -libraries in /usr/bin and /usr/lib. You will need to be root to do this!
   2.122 -
   2.123 -As noted earlier, 'make dist' installs files to a local 'install'
   2.124 -directory just outside the BK repository. These files will then need
   2.125 -to be installed manually onto the Xenoserver.
   2.126 -
   2.127 -
   2.128 -Installation
   2.129 -==============================
   2.130 -
   2.131 -First:
   2.132 -# cp /xen-1.1.bk/xen/image.gz /boot/xen.gz
   2.133 -# cp /xen-1.1.bk/xenolinux-2.4.22/arch/xeno/boot/image.gz /boot/xenolinux.gz
   2.134 -
   2.135 -Second, you must have 'GNU Grub' installed. Then you need to edit
   2.136 -the Grub configuration file '/boot/grub/menu.lst'.
   2.137 -
   2.138 -A typical Grub menu option might look like:
   2.139 -
   2.140 -title Xen / XenoLinux 2.4.22
   2.141 -        kernel /boot/xen.gz dom0_mem=131072 ser_baud=115200 noht
   2.142 -        module /boot/xenolinux.gz root=/dev/sda4 ro console=tty0
   2.143 -
   2.144 -The first line specifies which Xen image to use, and what command line
   2.145 -arguments to pass to Xen. In this case we set the maximum amount of
   2.146 -memory to allocate to domain0, and enable serial I/O at 115200 baud.
   2.147 -We could also disable smp support (nosmp) or disable hyper-threading
   2.148 -support (noht). If you have multiple network interface you can use
   2.149 -ifname=ethXX to select which one to use. If your network card is
   2.150 -unsupported, use ifname=dummy
   2.151 -
   2.152 -The second line specifies which XenoLinux image to use, and the
   2.153 -standard linux command line arguments to pass to the kernel. In this
   2.154 -case, we're configuring the root partition and stating that it should
   2.155 -be mounted read-only (normal practice). 
   2.156 -
   2.157 -The following is a list of command line arguments to pass to Xen:
   2.158 -
   2.159 - ignorebiostables Disable parsing of BIOS-supplied tables. This may
   2.160 -                  help with some chipsets that aren't fully supported
   2.161 -                  by Xen. If you specify this option then ACPI tables are
   2.162 -                  also ignored, and SMP support is disabled.
   2.163 -
   2.164 - noreboot         Don't reboot the machine automatically on errors.
   2.165 -                  This is useful to catch debug output if you aren't
   2.166 -                  catching console messages via the serial line.
   2.167 -
   2.168 - nosmp            Disable SMP support.
   2.169 -                  This option is implied by 'ignorebiostables'.
   2.170 -
   2.171 - noacpi           Disable ACPI tables, which confuse Xen on some chipsets.
   2.172 -                  This option is implied by 'ignorebiostables'.
   2.173 -
   2.174 - watchdog         Enable NMI watchdog which can report certain failures.
   2.175 -
   2.176 - noht             Disable Hyperthreading.
   2.177 -
   2.178 - ifname=ethXX     Select which Ethernet interface to use.
   2.179 -
   2.180 - ifname=dummy     Don't use any network interface.
   2.181 -
   2.182 - ser_baud=xxx     Enable serial I/O and set the baud rate.
   2.183 -
   2.184 - dom0_mem=xxx     Set the maximum amount of memory for domain0.
   2.185 -
   2.186 -
   2.187 -Boot into Domain 0
   2.188 -==============================
   2.189 -
   2.190 -Reboot your computer; After selecting the kernel to boot, stand back
   2.191 -and watch Xen boot, closely followed by "domain 0" running the
   2.192 -XenoLinux kernel.  Depending on which root partition you have assigned
   2.193 -to XenoLinux kernel in Grub configuration file, you can use the
   2.194 -corresponding username / password to log in.
   2.195 -
   2.196 -Once logged in, it should look just like any regular linux box. All
   2.197 -the usual tools and commands should work as per usual.
   2.198 -
   2.199 -
   2.200 -Start New Domains
   2.201 -==============================
   2.202 -
   2.203 -You must be 'root' to start new domains.
   2.204 -
   2.205 -Make sure you have successfully configured at least one
   2.206 -physical network interface. Then:
   2.207 -
   2.208 -# xen_nat_enable
   2.209 -# xen_read_console &
   2.210 -
   2.211 -When new  domains are created and  started, they will  send output via
   2.212 -UDP packets to  the local virtual network. Those  packets are received
   2.213 -by xen_read_console running in Domain  0 and output are printed out to
   2.214 -the standard output.
   2.215 -
   2.216 -Now edit the tools/examples/createlinuxdom.py script to your taste. This
   2.217 -should then be executed as root to create a new domain.
   2.218 -
   2.219 -You should be able to see XenoLinux boot message on standard output
   2.220 -with each line prepended with [domain_id].
   2.221 -
   2.222 -
   2.223 -List and Stop Domains
   2.224 -==============================
   2.225 -
   2.226 -You can see a list of existing domains with:
   2.227 -# tools/examples/listdoms.py
   2.228 -
   2.229 -In order to stop a domain, you use:
   2.230 -# tools/examples/stopdom.py <domain_id>
   2.231 -
   2.232 -To destroy a domain use ('force' causes an immediate destruction
   2.233 -without waiting for the guest OS to shut down cleanly):
   2.234 -# tools/examples/destroydom.py <domain_id> [force]
   2.235 -
   2.236 -
   2.237 -Other Control Tasks using Python
   2.238 -================================
   2.239 -
   2.240 -A Python module 'Xc' is installed as part of the tools-install
   2.241 -process. This can be imported, and an 'xc object' instantiated, to
   2.242 -provide access to privileged command operations:
   2.243 -
   2.244 -# import Xc
   2.245 -# xc = Xc.new()
   2.246 -# dir(xc)
   2.247 -# help(xc.domain_create)
   2.248 -
   2.249 -In this way you can see that the class 'xc' contains useful
   2.250 -documentation for you to consult.
   2.251 -
   2.252 -A further module of useful routines (XenoUtil) is also installed:
   2.253 -
   2.254 -# import XenoUtil
   2.255 -# help(XenoUtil)
   2.256 \ No newline at end of file