Subject: Re: Problems creating a linux domU
To: Juan RP <juan@xtrarom.org>
From: Manuel Bouyer <bouyer@antioche.lip6.fr>
List: port-xen
Date: 04/21/2005 12:46:23
On Thu, Apr 21, 2005 at 10:48:15AM +0200, Juan RP wrote:
> I don't know but I suppose it does, I'm using the kernel that comes with
> the Xen 2.0.5 binary distribution called "vmlinuz-2.6.10-xenU".

This is the one I use too, but with hda1, not sda1.

> 
> Can anyone that has installed ttylinux in a domU using NetBSD/Xen as dom0
> explain the steps to run/boot/install it correctly?

From memory:
- create the backing store and attach vnd, partition it (I do one ext2
  partition and one swap partition). Alternatively you can use 2 partitions
  from a physical disk.
- using pkgsrc/sysutils/e2fsprogs, format the ext2 partition as ext2fs (using
  mke2fs), and mount it
- copy the files from a working linux system (I did this from a fedora 2
  system)
- umount the ext2fs, and convert it to ext3fs using tune2fs (tune2fs -j).
- start the domain

My config file:
#  -*- mode: python; -*-
#============================================================================
# Python defaults setup for 'xm create'.
# Edit this file to reflect the configuration of your system.
#============================================================================

mvmid = 2;

#----------------------------------------------------------------------------
# Kernel image file.
kernel = "/etc/xen/kernels/vmlinuz-2.6.10-xenU"

# Optional ramdisk.
#ramdisk = "/boot/initrd.gz"

# The domain build function. Default is 'linux'.
#builder='linux'

# Initial memory allocation (in megabytes) for the new domain.
memory = 256

# A handy name for your new domain.  
name = "agenor"

# Which CPU to start domain on?
cpu = -1   # leave to Xen to pick
#cpu = mvmid  # set based on mvmid (mod number of CPUs)

#----------------------------------------------------------------------------
# Define network interfaces.

# Number of network interfaces. Default is 1.
nics=1

# Optionally define mac and/or bridge for the network interfaces.
# Random MACs are assigned if not given.
vif = [ 'mac=AA:00:00:50:0A:F0, bridge=bridge0' ]

#----------------------------------------------------------------------------
# Define the disk devices you want the domain to have access to, and
# what you want them accessible as.
# Each disk entry is of the form phy:DEV,VDEV,MODE
# where DEV is the device, VDEV is the device name the domain will see,
# and MODE is r for read-only, w for read-write.

#disk = [ 'phy:sda%d,sda1,w' % (7+mvmid),
#disk = [ 'phy:sda15,sda15,w' ]
disk = [ 'phy:/dev/vnd0a,0x301,w', 'phy:/dev/vnd0b,0x302,w', 'phy:/dev/vnd0e,0x303,w']

#----------------------------------------------------------------------------
# Set the kernel command line for the new domain.
# You only need to define the IP parameters and hostname if the domain's
# IP config doesn't, e.g. in ifcfg-eth0 or via DHCP.
# You can use 'extra' to set the runlevel and custom environment
# variables used by custom rc scripts (e.g. VMID=, usr= ).

# Set root device.
root = "/dev/hda1 ro"
#root = "/dev/sda14 ro"

# Sets runlevel 4 and the device for /usr.
extra = "4"

#----------------------------------------------------------------------------
# Set according to whether you want the domain  restarted when it exits.
# The default is False.
#autorestart = True

#============================================================================

-- 
Manuel Bouyer <bouyer@antioche.eu.org>
     NetBSD: 26 ans d'experience feront toujours la difference
--