Talk:HOWTO Xen and Gentoo
From Gentoo Linux Wiki
[edit] General Article Comments
[edit] Article Size
This article is getting rather large. What do people think of splitting it up into a Xen section with sub-articles. I'd suggest an overview article, an article on installing Xen on the dom0 system, and then articles for each method of installing a domU system. --AllenJB 14:15, 2 January 2007 (UTC)
Indeed that would be a good moment to include loads of hints and tips from the discussion page into the main article. Why not split the article up into the chapters that are already there?
- Introduction
- Xen Overview
- Preparing the System
- Building the hypervisor and applications
- ...
Just loose the chapter numbers to in the title to be able to add chapters in between in the future. --Jhendrix 18:27, 3 July 2007 (UTC)
The problem with splitting the article is that people lose the ability to see it as a whole and pieces begin to lag behind --Ghettodev 21:09, 5 January 2008 (UTC)
Another idea: move only the parts not directly related to the dom0 to new pages. For example, troubleshooting and setting up domUs aren't related to the dom0, so move them to another page. they aren't even always needed for the setup. --Tulcod 14:39, 1 April 2008 (UTC)
[edit] Before we begin
[edit] Fixing compiler issues
[fixed] Is the unmerge-Step right? Shouldn't this be "emerge unmerge /var/db/pkg/sys-devel/gcc-3*/*.ebuild"?
[fixed] [DCB] Are we trying to remove all the compilers? If we want to keep gcc-3.4.x it should read: emerge --unmerge /var/db/pkg/sys-devel/gcc-3.3*/*.ebuild
[fixed] Is it good to use unstable gcc? I think it's better to use ~x86 just for 3.4 or 3.4.4 so that this works, not more.
[DCB] 3.4.4 (perhaps earlier) supports the -mno-tls-direct-seg-refs CFLAG. See XenSpecificGlibc for details.
[CHRB] To avoid the performance impact, everything needs to be compiled with this CFLAG. That's why you need to upgrade to ~x86 gcc.
[JPH] I had to add an extra line to package.use:
edit /etc/portage/package.keywords. Add sys-libs/libstdc++-v3 ~x86
[JPH] Also I think it is important that when things change just like described above with the 3.4.4 issue it should be clearly marked for the early adopters to notice this.
[JPH] during the "emerge -eD world" my 14th ebuild failed with the following error message:
checking whether the C compiler ( /var/tmp/portage/libstdc++-v3-3.3.6/work/build/gcc/xgcc -B/var/tmp/portage/libstdc++-v3-3.3.6/work/build/gcc/ -B/usr/i686-pc-linux-gnu/bin/ -B/usr/i686-pc-linux-gnu/lib/ -isystem /usr/i686-pc-linux-gnu/include -O2 -O2 -march=pentium4 -mno-tls-direct-seg-refs ) works... nochecking whether the C compiler ( /var/tmp/portage/libstdc++-v3-3.3.6/work/build/gcc/xgcc -B/var/tmp/portage/libstdc++-v3-3.3.6/work/build/gcc/ -B/usr/i686-pc-linux-gnu/bin/ -B/usr/i686-pc-linux-gnu/lib/ -isystem /usr/i686-pc-linux-gnu/include -O2 -O2 -march=pentium4 -mno-tls-direct-seg-refs ) works... no configure: error: installation or configuration problem: C compiler cannot create executables. make: *** [configure-target-libiberty] Error 1 !!! ERROR: sys-libs/libstdc++-v3-3.3.6 failed. !!! Function src_compile, Line 232, Exitcode 2 !!! (no error message)
Unfortunately I have no clue yet what is going wrong, and I still have 272 ebuilds to go :-s So any help is welcome at this stage.
[CHRB] You only need libstdc++-v3 if you need to run old binary old packages. If not, adding it to package.provided as specified in the howto will prevent it from being installed. If you do need it,
[DCB] The libstdc++-v3 bug is in Bugzilla (#103827). To fix:
edit /etc/make.conf add PORTDIR_OVERLAY="/usr/local/portage" cd /usr/portage/ cp --parents -rp sys-libs/libstdc++-v3 /usr/local/portage/ cd /usr/local/portage/sys-libs/libstdc++-v3 edit libstdc++-v3-3.3.6.ebuild. add 'filter-flags -mno-tls-direct-seg-refs' to the '# xgcc wont understand gcc 3.4 flags...' section. ebuild libstdc++-v3-3.3.6.ebuild digest
[JPH] Also update the libstdc++-v3/Manifest file with the new filesize and md5 sum. Also I used a symlink instead of the cp commands, to save diskspace:
ln -s /usr/portage /usr/local/portage
[DCB] Added ebuild foo.ebuild digest above to fix the Manifest, filesize & md5 problem. Thanks for noticing that.
[DCB] Linking the directories will save disk space, but the ebuild file will be overwritten on the next 'emerge sync'. Better to duplicate the 80Kb libstdc++-v3 directory than re-fix the file I think.
[TRA] I had to change my gcc to the hardenednoiessp version to get xen-tools compiled. Because i run an hardened system i also had to disable the hardened USE flag. The reason for this is that i got an undefined reference to `__guard' and to `__stack_smash_handler' which are symbols provided to userland. For kernels the hardened specs have a rule to not add ssp.
[edit] Building the source
For some strange reason, if you copy over your old kernel config from /proc/config.gz (or somewhere else) and use that as a base; a lot of the options under 'Device drivers' disappear (like network drivers, block device drivers, ata drivers, etc.). I have not yet found out why. Please start a fresh config and keep your original config next to it so you can compare it that way. This cost me a whole afternoon, hope I can save someone some time.
[edit] Installing the hypervisor and applications
[JPH] 28-Dec-2005 => currently all xen-sources are masked in: /usr/portage/profiles/package.mask This issue should be automatically resolved when a 2.6.14 xen kernel is released. This also accounts for the "emaint --check world" message you receive from emerge -pvuDN world or similar.
[lejban] - I installing for scratch and could not use:
"No matter what profile you're using, edit your /etc/make.conf. Add '-mno-tls-direct-seg-refs' to your CFLAGS and 'nptl' to your USE-Flags."
when trying to "emerge xen-sources"
C complier cannot output executable.... happens on the first dep. From man gcc:
-mno-tls-direct-seg-refs
Controls whether TLS variables may be accessed with offsets from the TLS segment register (%gs for 32-bit, %fs for 64-bit), or whether the thread base pointer must be added.
Whether or not this is legal depends on the operating system, and whether it maps the segment to cover the entire TLS area.
For systems that use GNU libc, the default is on.
which does say me nothing.
removed the '-mno-tls-direct-seg-refs' (and now it's working) Can this be that Im on a pIII?
[sidAT projekt-turmDOTde]
you just need to emerge app-emulation/xen because app-emulation/xen-tools is just a depetency
emerge -pvt xen These are the packages that would be merged, in reverse order: Calculating dependencies... done! [ebuild N ] app-emulation/xen-3.1.0 USE="-custom-cflags -debug -pae" 0 kB [ebuild N ] app-emulation/xen-tools-3.1.0 USE="-custom-cflags -debug -doc (-hvm) -pygrub -screen" 0 kB [ebuild N ] sys-apps/iproute2-2.6.20.20070313 USE="berkdb -atm -minimal" 0 kB [ebuild N ] net-misc/bridge-utils-1.2 USE="-sysfs" 0 kB [ebuild N ] sys-kernel/xen-sources-2.6.20-r3 USE="-build -symlink" 0 kB [ebuild N ] sys-boot/grub-static-0.97 0 kB
[edit] Compile and install vmlinuz
[JPH] Trying to compile the domain0 kernel I found out that the 'bzImage' file and therfore the kernel itself wasn't created. I am currently looking into this to resolve this issue.
$MY_VERSION="2.6.12.5-xen/domain0"
cd /usr/src/linux
make menuconfig
make && make modules_install
cp -i arch/i386/boot/bzImage /boot/${MY_VERSION}/kernel
cp: cannot stat `arch/i386/boot/bzImage': No such file or directory
[JPH] In contrast to what the Gentoo standard installation manual states, with this procedure the kernel file is called:
/usr/src/linux/vmlinuz
We should stress this in the article. What is the difference between 'make && make modules_install' and 'make all', again a difference between the Gentoo installation manuals and this article?
[rlittle] wiki-noob here. It's still not clear that you need to boot xen.gz from app-emulation/xen until you read the GRUB section. A one line warning about this and a mention to check the GRUB section would be great.
[pAge]
If you call 'make' without target you normaly should get 'make all' behind the scene. 'make modules_install' only puts the modules in /lib/modules/<kernel-version>.
If you only call 'make all' you won't find the fresh build modules in the module path. So after booting the kernel can't find them.
[pAge]
I'm getting a little bit confused. Which kernel is it in the GRUB configuration section in the code listing line 4. Is it the domain0 oder domainU kernel ?
[JPH] I'd expect it to be the Domain0 kernel. The Domain0 kernel should be run at system startup, and therefore called by grub. The DomainU kernel is only started once you have a running Domain0 system. Only when a Domain0 system is up and running, the DomainU virtual machines can be started. First time you start a DomainU, you'll probably start it interactively from the #-prompt.
[JPH] Trying to boot the Xen Domain0 I did the following:
started off with a running 2.6.12-gentoo-r10 system installed linux-2.6.12.5-xen sources copied the /usr/src/linux/2.6.12-gentoo-r10/.config to ../linux-2.6.12.5-xen/.config changed kernel settings accoring the article for Domain0 installed the files on /boot and updated my grub.conf
Trying to boot the system I got these boot time messages:
... NET: Registerd protocol 17 Bridge firewalling registerd VFS: Cannot open root device "hda3" or unknown-block(0,0) Please append a correct "root=" boot option Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
whereas I'd expect something like:
ReiserFS: hda3: found reiserfs format "3.6" with standard journal
Why is my root filesystem not found? Is this new kernel unfamiliar with /dev/hda3? ReiserFS should be in the new kernel because I used a .config file from a working setup. What has changed? Any help is welcome.
[buggs] The default xen config will build most stuff as modules including the IDE and SCSI drivers.
It appears that copying the .config file from my running kernel does not work for several devices, amongst which my PCI-bus. I'll be going through my kernel config by hand later this weekend.
[anonymous] add noacpi to your "module /vmlinuz-2.6.x.xx-xen0" entry in your grub.conf. I had the same problem until I disabled acpi. Alternatively you can remove ACPI from your kernel.
[skijmpr] I'd advise not doing the make0/makeU trick as described currently in the article. Doing make0 for dom0 using a _dom0 subdirectory may break some ebuilds, such as ndiswrapper, which rely on finding the compiled kernel in the base /usr/src/linux directory. My suggestion would be to modify the article to explain how to setup just makeU so that the domU configuration is kept separate from dom0, but leave the dom0 configuration in the standard directory.
[jsnx] I agree with skijmpr -- I put my domU kernels under/srv/xenin:
/srv/xen/domU-kernels/usr/src/
so that I can do the build in a chroot for cleanliness.
[skoehler] Sorry. My description was not complete. I added information on how to tell portage about our _dom0 directory by setting the KBUILD_OUTPUT variable in /etc/make.conf.
[edit] Rollback network bridge
The 3.0.0_pre20050919 Xen pre-release includes example scripts tailored to RedHat with ifup and ifdown, and hence do not work in Gentoo.
Apparently you can use Gentoo's own bridge script. First symlink net.lo to a bridge network interface:
# ls -la /etc/init.d/net.br* lrwxrwxrwx 1 root root 6 Jul 4 17:01 /etc/init.d/net.br0 -> net.lo lrwxrwxrwx 1 root root 6 Jul 4 17:01 /etc/init.d/net.br1 -> net.lo
Configure the bridges in /etc/conf.d/net:
bridge_br0="eth0"
bridge_br1="eth1"
config_eth0=( "null" )
config_eth1=( "null" )
config_br0=( "192.168.0.12/24" )
config_br1=( "192.168.1.144/24" )
brctl_br0=( "setfd 0" "sethello 0" "stp off" )
brctl_br1=( "setfd 0" "sethello 0" "stp off" )
routes_br0=(
"default via 192.168.0.1"
)
routes_br1=(
"default via 192.168.1.1"
)
Then configure in the domU config files:
vif = [ 'mac=aa:de:ad:be:ef:31, bridge=br0' ]
[edit] Other thoughts ...
[JPH] Is it a good plan to give pointers on *where* during the gentoo system installation the Xen installation should be done? I am especially wondering about the gcc issue because I ran into a problem using the LiveCD and copying my (running) make.conf. There is this '-mno-tls-direct-seg-refs' CFLAG that the supplied compiler does not support and therefore won't compile ;o)
- As of 2006.1 I don't believe this should be a problem as the install CD's now use GCC 4.1 --AllenJB 14:15, 2 January 2007 (UTC)
[JPH] When should I choose for the Xen 2.0 sources, and when for 3.0? Anyone found something like a compatibility list or so?
[Alexxy] How can I use xen & xen-sources mercurial repository via portage? It can give a newer kernel to use...
[edit] memory optimization
[JPH] When a machine has 1GB or more physical RAM (actually more than some 880MB or so: FAQ Linux Memory Management) you should compile your kernel with:
Processor type and features ---> High Memory Support (4GB) --->
How should domain0 and domainU kernels be configured? According to total physical RAM? or according to memory appointed to a domain?
what about more than 4GB of memory? will it work with support for more?
[edit] Building kernels with Genkernel
[NLD] There seems to be a problem with using Genkernel to create an initramfs for Xen domains. Applying the genkernel-udev patch, and modifying genkernel.conf as described in the HOWTO, allows building of the kernel and modules but the compilation of udev fails during the initramfs construction phase. genkernel.log and genkernel output don't provide any useful clues as to the failure.
I got into the realm of constructing an initramfs for my domU kernel after getting VFS: Unable to mount root fs or block(0,0) errors during booting of domU. I went down this path after finding a posting on the xensource mailing lists that indicated that initrds are required to activate udev for domU under Gentoo. I must admit to finding this a little odd as my dom0 boots fine without an initrd.
Has anyone successfully constructed a domU kernel, modules and initramfs using a patched genkernel-3.3.6?
In /usr/share/genkernel, you have a repository call xen0, does it mean I don't have to use anymore x86-xen0 ? (same question for xenU) [Kartoch]
[edit] Missing dependency
It looks like the xen ebuild is missing a dependency on Hotplug. That might be causing the unable to mount root fs errors. I know it gave me 5-6 days of torture before someone in ##xen on freenode suggested I tried to emerge hotplug. Maybe this should be put somewhere in the documentation here? - 66.93.220.3 08:59, 17 February 2006 (GMT)
- I found that I had the same problem, *with hotplug already installed*. The problem seemed to be that the default kernel config includes SCSI disk support as a module, and sata (which I built in statically), to make /dev/sd* appears to rely on it, or something, but there's no dependency check. This is my guess at what was wrong, given my symptoms. Maybe your problem is different, but I wouldn't have thought having hotplug installed in your root partition would help you mount your root partition. --Alsuren 13:00, 30 July 2006 (UTC)
[edit] Alternate methods of creating domUs
Okay, I tried to use domi, and it breaks on my lvm box. So, I started to make images from scratch..for apt-get distros, I use debootstrap, and for RPM based distros, I used rpmstrap. Maybe someone should include that in the guide? I might add it later.. - 66.93.220.3 19:28, 21 April 2006 (UTC)
[edit] 2.6.23 DomU
vanilla-sources-2.6.23 should be able to be booted as a DomU --risk 19:30, 24 November 2007 (UTC)
Only works for x86 and not x86_64.
According to this mailing list thread you should find it in menuconfig under "Processor type and features"--85.222.168.21 11:52, 25 November 2007 (UTC)
[edit] Notes for Xen2.x
Xen 3 currently only supports Linux 2.6. I think many people still want/need to run 2.4-Kernels, *BSD, ... so some hints for Xen 2.x would be nice. Unknown author, unknown date.
With VT-x support in the new Intel CPUs a Xen3 host can run unmodified guests, which should include 2.4 Linux kernels and the BSDs. However, I agree that some might want to still use Xen2. I don't think we should have a single HOWTO for both versions, though, as it will just confuse people, and they'll end up following the wrong instructions. How about renaming this article HOWTO Xen3 and creating a new HOWTO Xen2, with HOWTO Xen being essentially a disambiguation page, perhaps with some brief advice on choosing between v2 and v3? Aross 00:43, 31 May 2006 (UTC)
[edit] TTYs
[edit] Missing ttys and X
I am getting errors according /dev/ttys on both my Guest-OSs (which I build by hand, like a normal gentoo-install), how is the setup for that? I am on the way to get X.org running in DomU by hiding a second graphics card for Dom0. X.org comes with the error:xf86OpenConsole: Cannot open /dev/tty0 (No such file or directory).
EDIT: Well, it seems that this way isn't possible, but I should try this way: http://lists.xensource.com/archives/html/xen-users/2005-09/msg00630.html
[edit] Missing ttys and agetty
I was getting a bunch of "agetty[4001]: /dev/tty2: No such file or directory" in the system log followed by "init: Id "c2" respawning too fast: disabled for 5 minutes". This error was also causing "/var/log/wtmp" to be huge (1.5 GB in my case.)
Apparently only "tty1" is created by default. You can avoid this error by remarking out the other terminals in "/etc/inittab". There is discussion on the xen-users mailing list here: http://lists.xensource.com/archives/html/xen-users/2006-08/msg00925.html
[edit] SDL
SDL stuff for VT Support not work. There are no sdl ebuild available. I use libsdl which use Flag we need?
[edit] lib/tls Problem
I have run "emerge --emptytree --deep --ask --verbose world" but I get still this:
*************************************************************** *************************************************************** ** WARNING: Currently emulating unsupported memory accesses ** ** in /lib/tls glibc libraries. The emulation is ** ** slow. To ensure full performance you should ** ** install a 'xen-friendly' (nosegneg) version of ** ** the library, or disable tls support by executing ** ** the following as root: ** ** mv /lib/tls /lib/tls.disabled ** ** Offending process: modprobe (pid=850) ** *************************************************************** *************************************************************** Continuing...
my make.conf:
# These settings were set by the catalyst build script that automatically built this stage
# Please consult /etc/make.conf.example for a more detailed example
CFLAGS="-O2 -march=nocona -pipe -mno-tls-direct-seg-refs"
CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
MAKEOPTS="-j3"
USE="gpm doc mysql samba screen pdf sdl xen lvm lvm2 gtk gnome qt kde dvd alsa cdr fbcon svga fusion mmx sysfs directfb"
PORT_LOGDIR=/var/log/portage
VDR_LOCAL_PATCHES_DIR="/root/vdrpatch/"
PORTDIR_OVERLAY="/usr/local/gentoo-de /usr/local/portage /usr/local/gentoo-webapps-overlay/experimental /usr/local/gentoo-webapps-overlay/production-ready"
INPUT_DEVICES="keyboard mouse evdev"
VIDEO_CARDS="fglrx v4l nv vesa"
LIRC_DEVICES=serial
LINGUAS="de"
I can reproduce this. Not resolved yet. --Jhendrix 08:14, 4 September 2006 (UTC)
That's correct so far but a "emerge -ev system" did the trick :) Does someone know which special packages to re-emerge instead of compiling almost everything? --joe.knall 18:04, 2006-12-17 (UTC)
- Because we're making a CFLAG change, it's pretty hard to pick out individual packages. If you're doing this on a new system, I believe it's likely to be pretty much everything anyway. --AllenJB 14:15, 2 January 2007 (UTC)
- ALSO! after recompiling everything -- make sure you also recompile(busybox etc)/rebuild your initrd if you use it. I got the same message every time I boot -- I think its cause the modprobe used by busybox wasn't compiled in a xen-friendly manner? --Michael Wasser
[edit] domU: Error: Device 2049 (vbd) could not be connected. Hotplug scripts not working.
(Probably your Block-Devices are not set up correctly in /etc/xen/guest.cfg e.g. [phy:/dev/vg0/guest-disk] simply does not exist or the config-entry is pointing into nowhere.)
I set up ttylinux as described and tried to start it:
# xm create /etc/xen/ttylinux -c Using config file "/etc/xen/ttylinux". Error: Device 2049 (vbd) could not be connected. Hotplug scripts not working.
My guess is it has something to do with SCSI support in the domU kernel that is not enabled in mine, but I'm not sure how to solve it nicely. (Either make it use ide or make the kernel support scsi).
--Jhendrix 16:13, 30 August 2006 (UTC)
The error message went away after
emerge =udev-070 etc-update emerge udev
Now I get:
#xm create -c /etc/xen/ttylinux Using config file "/etc/xen/ttylinux". Started domain ttylinux
But where has all output gone? And why does it spontanuously shutdown after 1m20s? xentop reports near 0 cpu and memory usage for the ttylinux domain. Notice the laste emerge udev is necessary to get the sytem up so far, but once I run etc-update again, the VM comes back wih the same error message :s --Jhendrix 18:08, 30 August 2006 (UTC)
SOLUTION
The offending file appears to be: /etc/udev/rules.d/50-udev.rules and this line:
ENV{UDEVD_EVENT}=="1", RUN+="/sbin/udev_run_hotplugd $env{SUBSYSTEM}"
should read like this:
ENV{UDEVD_EVENT}=="1", RUN+="/sbin/udev_run_hotplugd"
then the error message no longer appears and domU starts up.
--Jhendrix 08:10, 2 September 2006 (UTC)
I ran into this problem recently, Sept 2007. The problem was sys-apps/stat was installed. I unmerged this package, re emerged sys-apps/coreutils, and everything worked properly.
[edit] domU using quickpkg
[edit] stage2 vs stage3
What's the difference between the stage 2 and stage 3 tarballs? Why is stage 2 used instead of stage 3? --AllenJB 14:15, 2 January 2007 (UTC)
[edit] Unable to set root's password when following the HOWTO
Emerging sys-libs/cracklib with the ROOT=/mnt/gentoo option can cause passwd to fail with the message: 'passwd: Critical error - immediate abort'. This is due the bug# 167248. Re-emerging cracklib seems to fix this problem.
[edit] domU: building a working kernel
I did a really dirty hack but at least I have ttylinux working.
- I took the Gentoo 2006.0 livecd and boot it
- Copied /proc/config.gz to harddisc
- boot from harddisc
- zcat config.gz > /usr/src/linux/.config
- make oldconfig
- do some hacking and other nasty stuf to get rid of all modules and build them into the kernel itself
- make menuconfig # follow the HOWTO's instructions
- make && make modules_install
Problem is I really like my kernels nice and clean, with as little unused stuff as necessary, whereas these livecd need so many things enabled :-/
Ideas anyone which kernel options are vital to the domU kernel for the kernel to boot?
--Jhendrix 10:23, 31 August 2006 (UTC)
[edit] Problem when booting the machine (Dom0)
During boot of the machine (Dom0) various services are started, and one fails for some reason. Before Xen the system booted cleanly.
Here is part of my startup sequence:
* Starting acpid ... [OK] * Starting D-BUS system messagebus ... [OK] * Starting Hardware Abstraction Layer daemon ... [OK] * Starting gpm ... [OK] * Starting up xdm ... [OK] * Setting clock via the NTP client 'ntpdate' ... Error : Temporary failure in name resolution 4 Sep 10:58:17 ntpdate[10558]: can't find host ntp.xs4all.nl Error : Temporary failure in name resolution 4 Sep 10:58:17 ntpdate[10558]: can't find host ntp2.xs4all.nl Error : Temporary failure in name resolution 4 Sep 10:58:17 ntpdate[10558]: can't find host pool.ntp.org 4 Sep 10:58:17 ntpdate[10558]: no servers can be used, exiting * Failed to set clock [!!] * Starting Xen control daemon ... [OK] * Starting portmap ... [OK] * Starting cupsd ... [OK] * Mounting nfsd filesystem in /proc ... [OK] * ...
Here is part of the syslog during boot. Timestamps may seem strange but this is caused by interactive boot procedure:
Sep 4 10:57:47 lucifer kernel: Adding 1048568k swap on /dev/vg_sulfur/swap. Priority:-1 extents:1 across:1048568k Sep 4 10:58:17 lucifer rc-scripts: Failed to set clock Sep 4 11:06:04 lucifer xenstored: Checking store ... Sep 4 11:06:04 lucifer xenstored: Checking store complete. Sep 4 11:06:04 lucifer xenstored: Checking store ... Sep 4 11:06:04 lucifer xenstored: Checking store complete. Sep 4 11:06:05 lucifer rc-scripts: WARNING: net.eth0 has not yet been started. Sep 4 11:06:05 lucifer kernel: device vif0.0 entered promiscuous mode
Somehow the ethernet interface refuses to start properly. By the time the 'login: ' prompt is reached, ethernet is up and running though, and /etc/init.d/ntp-client can be started manually. --Jhendrix 09:30, 4 September 2006 (UTC)
[edit] Problem when shutting downlocal the machine (Dom0)
after issuing a shtudown -h now following services are stopped:
- local
- vixie-cron
- saving random seed S.M.A.R.T.
- ntpd
- distcc
- ...?
- xdm
the screen flashes to X-session and the machine hangs. Shutdown is not completed and filesystems are not closed. Again before installing Xen the system shut down correctly. It appears to be some sort of race condition since sometimes the machine shuts down nicely, and sometimes it does not.
--Jhendrix 09:30, 4 September 2006 (UTC)
[edit] Poor DomU performance
Notice that your DomU will not perform if the load on Dom0 is high. For example I had mprime running in Dom0. Mprime is a program running at lowest priority calculating primes. See also GIMSP. My solution for now is to migrate the mprime to a dedicated DomU. This is also a nice XEN test :o) Ofcource the real solution is to do something with the schedulers as described in HOWTO_Virtual_Xen_Servers_and_Gentoo#Giving_Priority
--Jhendrix 07:43, 20 September 2006 (UTC)
[edit] Xen Appliances
Inspired by VMWare appliances I created a proof of concept for an Firefox appliance. Surf the web from in an isolated environment :o)
It is just a proof of concept, so use at your own risk.
Details are on my personal wiki
[edit] Xen 3.0.3
Has anyone got any experience with new Xen 3.0.3 version yet?
(JHendrix)
[edit] Xen 3.0.4
I've noted on two occassions now that using Xen 3.0.4 from the marineam-xen overlay requires net.eth0 to be started in order for the bridging to work correctly. If the net.eth0 script hasn't run, you simply get a bridge without any address information (specified in /etc/conf.d/net). -- Kenneth Kalmer
[edit] 3D acceleration
Is there any patches (or ebuild) for Nvidia drivers to get 3D-acceleration working on Dom0 and DomU ? [1]
3D acceleration with Nvidia+Xen on Dom0 and DomU (also with WinXP?):
patch-nv-1.0-9625-xenrt.txt Maybe ~arch ebuild for Gentoo?
[edit] genkernel xen-x86 patch -- switch_root excluded
It seems as though the arch upgrade listed in the tutorial uses a broken config for busybox with the current versions of genkernel/xen (3.4.6/3.0.4) when trying to use an initramfs. I got error saying that at line 735 in init, switch_root was not found. On further inspection, the busy-config file (/usr/share/genkernel/x86-xen0/busy-config) in the "x86-xen" arch updated listed excludes switch_root. -- Michael Wasser
echo "CONFIG_SWITCH_ROOT=y" >> /usr/share/genkernel/x86-xen0/busy-config
[edit] HVM support on Xeon 64 bit systems
I tried to compile XEN 3.0 and XEN 3.1 for two days now on a Xeon 64 bit system and it just would not compile with hvm support. The compile output stated that it didn't find a suitable version of several libraries. Then I studied the ebuild file and setting the following helped to get rid of the compile errors:
| File: /etc/make.conf |
XEN_TARGET_ARCH="x86_64" |
--Markd 17:37, 21 August 2007 (UTC)
This issue is gone with dev86-0.16.17-r3 latest. --GuT
[edit] Network problems
If you are having problems with xen breaking your network, ipv6 must be disabled See this thread: http://forums.gentoo.org/viewtopic-p-4736984.html#4736984 Submitted to xen bugzilla: http://bugzilla.xensource.com/bugzilla/show_bug.cgi?id=1142
Also note that net.eth0 must be started on startup. The instructions in this article saying that you must disable it in /etc/conf.d/rc is incorrect. The xen scripts do not read /etc/conf.d/net, they just copy the existing config over from your interface.
[edit] dom0 kernel config for 2.6.20-xen-r6
I've been having trouble for quite a while to get 2.6.20-xen-r6 working for dom0. 2.6.16.52-xen appears to be stable though. Please take a look at http://wirespeed.xs4all.nl/mediawiki/index.php/Kernel-dom0 Most of the time the domain won't properly boot, but it seems to be some sort of race condition. None of my 2.6.20 dom0 kernels have been stable.
Does anyone have a working 2.6.20-xen-r6 kernel config?
--Jhendrix 17:52, 10 February 2008 (UTC)
[edit] as from 2.6.23 gentoo-sources support Xen by default
It'll need a little more work though than a simple make oldconfig ...
--Jhendrix 17:45, 18 February 2008 (UTC)
