view docs/src/user/redhat.tex @ 7727:d7bcc7bbf981

Fix region0 virtual accesses
Signed-off by: Dan Magenheimer <dan.magenheimer@hp.com>
author djm@kirby.fc.hp.com
date Fri Nov 11 12:51:08 2005 -0600 (2005-11-11)
parents 06d84bf87159
line source
1 \chapter{Installing Xen / XenLinux on Red~Hat or Fedora Core}
3 When using Xen / XenLinux on a standard Linux distribution there are a
4 couple of things to watch out for:
6 Note that, because domains greater than 0 don't have any privileged
7 access at all, certain commands in the default boot sequence will fail
8 e.g.\ attempts to update the hwclock, change the console font, update
9 the keytable map, start apmd (power management), or gpm (mouse
10 cursor). Either ignore the errors (they should be harmless), or
11 remove them from the startup scripts. Deleting the following links
12 are a good start: {\path{S24pcmcia}}, {\path{S09isdn}},
13 {\path{S17keytable}}, {\path{S26apmd}}, {\path{S85gpm}}.
15 If you want to use a single root file system that works cleanly for
16 both domain~0 and unprivileged domains, a useful trick is to use
17 different `init' run levels. For example, use run level 3 for
18 domain~0, and run level 4 for other domains. This enables different
19 startup scripts to be run in depending on the run level number passed
20 on the kernel command line.
22 If using NFS root files systems mounted either from an external server
23 or from domain0 there are a couple of other gotchas. The default
24 {\path{/etc/sysconfig/iptables}} rules block NFS, so part way through
25 the boot sequence things will suddenly go dead.
27 If you're planning on having a separate NFS {\path{/usr}} partition,
28 the RH9 boot scripts don't make life easy - they attempt to mount NFS
29 file systems way to late in the boot process. The easiest way I found
30 to do this was to have a {\path{/linuxrc}} script run ahead of
31 {\path{/sbin/init}} that mounts {\path{/usr}}:
33 \begin{quote}
34 \begin{small}\begin{verbatim}
35 #!/bin/bash
36 /sbin/ipconfig lo
37 /sbin/portmap
38 /bin/mount /usr
39 exec /sbin/init "$@" <>/dev/console 2>&1
40 \end{verbatim}\end{small}
41 \end{quote}
43 %% $ XXX SMH: font lock fix :-)
45 The one slight complication with the above is that
46 {\path{/sbin/portmap}} is dynamically linked against
47 {\path{/usr/lib/libwrap.so.0}} Since this is in {\path{/usr}}, it
48 won't work. This can be solved by copying the file (and link) below
49 the {\path{/usr}} mount point, and just let the file be `covered' when
50 the mount happens.
52 In some installations, where a shared read-only {\path{/usr}} is being
53 used, it may be desirable to move other large directories over into
54 the read-only {\path{/usr}}. For example, you might replace
55 {\path{/bin}}, {\path{/lib}} and {\path{/sbin}} with links into
56 {\path{/usr/root/bin}}, {\path{/usr/root/lib}} and
57 {\path{/usr/root/sbin}} respectively. This creates other problems for
58 running the {\path{/linuxrc}} script, requiring bash, portmap, mount,
59 ifconfig, and a handful of other shared libraries to be copied below
60 the mount point --- a simple statically-linked C program would solve
61 this problem.