From 071534c77850ea1f32987c3b908c047c40c225b4 Mon Sep 17 00:00:00 2001 From: shakthimaan Date: Tue, 23 Sep 2008 05:42:19 +0000 Subject: . --- microkernel/mach/gnumach/ports/xen.mdwn | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/microkernel/mach/gnumach/ports/xen.mdwn b/microkernel/mach/gnumach/ports/xen.mdwn index 1c1cc40f..695be30d 100644 --- a/microkernel/mach/gnumach/ports/xen.mdwn +++ b/microkernel/mach/gnumach/ports/xen.mdwn @@ -10,17 +10,34 @@ is included in the section entitled /!\ Since GNU Mach doesn't handle PAE yet, you'll need a PAE-disabled hypervisor. +On Debian Lenny, for example, you can install xen-hypervisor-3.2-1-i386-nonpae. + /!\ You need an already installed GNU/Hurd system. +If you have a free partition, you can fdisk to type 0x83, create a filesystem using: + + sudo mke2fs -b 4096 -I 128 -o hurd /dev/sda4 + +Replace /dev/sda4 with your partition. Install and use crosshurd to setup a GNU/Hurd system on this partition. + This also means that you'll currently need a PAE-disabled `dom0`. [[Stefan_Siegl|stesie]] is providing a PAE-disabled Linux kernel image at . - You can either get binaries at or build them yourself. - Copy `gnumach-xen` and `hurd-modules` to your dom0 /boot. - Copy `hurd` into `/etc/xen`, edit it for fixing access to your hurd / and swap + +Here is a sample /etc/xen/hurd configuration + + kernel = "/boot/gnumach-xen" + memory = 256 + disk = ['phy:sda4,hda,w'] + extra = "root=device:hd0" + vif = [ '' ] + ramdisk = "/boot/hurd-modules" + - Run `xm create -c hurd`, gnumach should get started. - If `xm` complains about networking (`vif could not be connected`), it's Xen scripts' fault, see Xen documentation for how to configure the network. The simplest way is network-bridge with fixed IPs (note that you need the bridge-utils package for this). You can also just disable networking by commenting the vif line in the config. - If `xm` complains `Error: (2, 'Invalid kernel', 'xc_dom_compat_check: guest type xen-3.0-x86_32 not supported by xen kernel, sorry\n')`, you most probably have a PAE-enabled hypervisor, and you just need to install and boot non-PAE hypervisor and kernel. -- cgit v1.2.3 From 7ea8f272277a21c9a8f6761bc552ef9805bc7667 Mon Sep 17 00:00:00 2001 From: shakthimaan Date: Tue, 23 Sep 2008 05:45:09 +0000 Subject: . --- microkernel/mach/gnumach/ports/xen.mdwn | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/microkernel/mach/gnumach/ports/xen.mdwn b/microkernel/mach/gnumach/ports/xen.mdwn index 695be30d..5d33a8d0 100644 --- a/microkernel/mach/gnumach/ports/xen.mdwn +++ b/microkernel/mach/gnumach/ports/xen.mdwn @@ -16,7 +16,7 @@ On Debian Lenny, for example, you can install xen-hypervisor-3.2-1-i386-nonpae. If you have a free partition, you can fdisk to type 0x83, create a filesystem using: - sudo mke2fs -b 4096 -I 128 -o hurd /dev/sda4 + sudo mke2fs -b 4096 -I 128 -o hurd /dev/sda4 Replace /dev/sda4 with your partition. Install and use crosshurd to setup a GNU/Hurd system on this partition. @@ -31,12 +31,12 @@ You can either get binaries at or bu Here is a sample /etc/xen/hurd configuration - kernel = "/boot/gnumach-xen" - memory = 256 - disk = ['phy:sda4,hda,w'] - extra = "root=device:hd0" - vif = [ '' ] - ramdisk = "/boot/hurd-modules" + kernel = "/boot/gnumach-xen" + memory = 256 + disk = ['phy:sda4,hda,w'] + extra = "root=device:hd0" + vif = [ '' ] + ramdisk = "/boot/hurd-modules" - Run `xm create -c hurd`, gnumach should get started. - If `xm` complains about networking (`vif could not be connected`), it's Xen scripts' fault, see Xen documentation for how to configure the network. The simplest way is network-bridge with fixed IPs (note that you need the bridge-utils package for this). You can also just disable networking by commenting the vif line in the config. -- cgit v1.2.3 From 64b01e4b16aa0c649c523dfbca6ec011cf569156 Mon Sep 17 00:00:00 2001 From: shakthimaan Date: Tue, 23 Sep 2008 05:52:54 +0000 Subject: . --- microkernel/mach/gnumach/ports/xen.mdwn | 33 ++++++++++++++++++++++++--------- 1 file changed, 24 insertions(+), 9 deletions(-) diff --git a/microkernel/mach/gnumach/ports/xen.mdwn b/microkernel/mach/gnumach/ports/xen.mdwn index 5d33a8d0..47a7804b 100644 --- a/microkernel/mach/gnumach/ports/xen.mdwn +++ b/microkernel/mach/gnumach/ports/xen.mdwn @@ -8,18 +8,12 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] +## Xen dom0, PAE-disabled hypervisor + /!\ Since GNU Mach doesn't handle PAE yet, you'll need a PAE-disabled hypervisor. On Debian Lenny, for example, you can install xen-hypervisor-3.2-1-i386-nonpae. -/!\ You need an already installed GNU/Hurd system. - -If you have a free partition, you can fdisk to type 0x83, create a filesystem using: - - sudo mke2fs -b 4096 -I 128 -o hurd /dev/sda4 - -Replace /dev/sda4 with your partition. Install and use crosshurd to setup a GNU/Hurd system on this partition. - This also means that you'll currently need a PAE-disabled `dom0`. [[Stefan_Siegl|stesie]] is providing a PAE-disabled Linux kernel image at . @@ -29,6 +23,18 @@ You can either get binaries at or bu - Copy `gnumach-xen` and `hurd-modules` to your dom0 /boot. - Copy `hurd` into `/etc/xen`, edit it for fixing access to your hurd / and swap +## GNU/Hurd system + +/!\ You need an already installed GNU/Hurd system. + +If you have a free partition, you can fdisk to type 0x83, create a filesystem using: + + sudo mke2fs -b 4096 -I 128 -o hurd /dev/sda4 + +Replace /dev/sda4 with your partition. Install and use crosshurd to setup a GNU/Hurd system on this partition. + +## /etc/xen/hurd configuration + Here is a sample /etc/xen/hurd configuration kernel = "/boot/gnumach-xen" @@ -38,10 +44,19 @@ Here is a sample /etc/xen/hurd configuration vif = [ '' ] ramdisk = "/boot/hurd-modules" -- Run `xm create -c hurd`, gnumach should get started. +## Running Hurd with Xen + +To run Hurd with Xen, use: + + xm create -c hurd + +and gnumach should get started. + - If `xm` complains about networking (`vif could not be connected`), it's Xen scripts' fault, see Xen documentation for how to configure the network. The simplest way is network-bridge with fixed IPs (note that you need the bridge-utils package for this). You can also just disable networking by commenting the vif line in the config. - If `xm` complains `Error: (2, 'Invalid kernel', 'xc_dom_compat_check: guest type xen-3.0-x86_32 not supported by xen kernel, sorry\n')`, you most probably have a PAE-enabled hypervisor, and you just need to install and boot non-PAE hypervisor and kernel. +## Building from sources + If you want to generate these images, first get the `gnumach-1-branch-Xen-branch` branch from gnumach CVS. Then look for "Ugly" in `kern/bootstrap.c`, how to generate `hurd-modules` is explained there, and you'll have to fix `EXT2FS_SIZE` and `LD_SO_SIZE` by hand. Then use -- cgit v1.2.3 From 0dd5d4a3f537db40b812913b2df6f81fc4293126 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 23 Sep 2008 08:34:38 +0200 Subject: microkernel/mach/gnumach/ports/xen/networking_configuration: New page. --- microkernel/mach/gnumach/ports/xen.mdwn | 2 + .../ports/xen/networking_configuration.mdwn | 46 ++++++++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 microkernel/mach/gnumach/ports/xen/networking_configuration.mdwn diff --git a/microkernel/mach/gnumach/ports/xen.mdwn b/microkernel/mach/gnumach/ports/xen.mdwn index 47a7804b..20fa3e62 100644 --- a/microkernel/mach/gnumach/ports/xen.mdwn +++ b/microkernel/mach/gnumach/ports/xen.mdwn @@ -44,6 +44,8 @@ Here is a sample /etc/xen/hurd configuration vif = [ '' ] ramdisk = "/boot/hurd-modules" +Suggestions about [[networking_configuration]] are available. + ## Running Hurd with Xen To run Hurd with Xen, use: diff --git a/microkernel/mach/gnumach/ports/xen/networking_configuration.mdwn b/microkernel/mach/gnumach/ports/xen/networking_configuration.mdwn new file mode 100644 index 00000000..15af862c --- /dev/null +++ b/microkernel/mach/gnumach/ports/xen/networking_configuration.mdwn @@ -0,0 +1,46 @@ +[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + +The Xen dom0 infrastructure provides for a bridged networking setup using shell +scripts to configure the bridging device properly and attach the domUs' virtual +interfaces to the bridge. However, we've [seen +problems](http://lists.gnu.org/archive/html/bug-hurd/2008-08/msg00023.html) +when using this approach, so to [solve these +issues](http://lists.gnu.org/archive/html/bug-hurd/2008-09/msg00071.html), +instead suggest the following configuration method (to achieve the same thing). + +This is for a Debian dom0. + +# */etc/network/interfaces* + +Comment out everything referencing your physical devices. Add this: + + auto br0 + iface br0 inet dhcp + bridge_ports regex (eth|vif).* noregex + +... or if you want to do the manual configuration dance: + + auto br0 + iface br0 inet static + bridge_ports regex (eth|vif).* noregex + address 192.168.10.60 + netmask 255.255.255.0 + [...] + +This needs a version of the `bridge-utils` package more recent than the current +Debian stable one ([[debbug 405215]]). (It's trivial to rebuild the `dpkg` of, +e.g., the Debian testing one on Debian stable.) + +# */etc/xen/xend-config.sxp* + +Make sure that only `(network-script network-dummy)` and `(vif-script +vif-bridge)` are activated and all other `(network-script network-WHATEVER)`, +respective `(vif-script vif-WHATEVER)` are commented out. -- cgit v1.2.3 From 8bd1c783800d72b13d8b874acf1e8ea3d401fe34 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 23 Sep 2008 08:56:26 +0200 Subject: How to get stable MAC addresses. --- microkernel/mach/gnumach/ports/xen.mdwn | 3 +++ 1 file changed, 3 insertions(+) diff --git a/microkernel/mach/gnumach/ports/xen.mdwn b/microkernel/mach/gnumach/ports/xen.mdwn index 20fa3e62..14a5c495 100644 --- a/microkernel/mach/gnumach/ports/xen.mdwn +++ b/microkernel/mach/gnumach/ports/xen.mdwn @@ -46,6 +46,9 @@ Here is a sample /etc/xen/hurd configuration Suggestions about [[networking_configuration]] are available. +If you need stable MAC addresses, use a syntax like `vif = [ +'mac=00:16:3e:XX:XX:XX, bridge=br0' ]`. + ## Running Hurd with Xen To run Hurd with Xen, use: -- cgit v1.2.3 From b2df9f0731547ee40df58df182d098b91560b27e Mon Sep 17 00:00:00 2001 From: MichaelBanck Date: Wed, 24 Sep 2008 09:23:25 +0000 Subject: make it clearer that it has to be explicitely off --- hurd/running/debian/faq/sshd.mdwn | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/hurd/running/debian/faq/sshd.mdwn b/hurd/running/debian/faq/sshd.mdwn index 4ae689bf..e98b5e03 100644 --- a/hurd/running/debian/faq/sshd.mdwn +++ b/hurd/running/debian/faq/sshd.mdwn @@ -8,5 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -You need to disable `PrivilegeSeparation` in `/etc/ssh/sshd_options`. Also -make sure you have `/dev/random`, see below. +Privilege seperation does not work with Hurd currently. You need to explicitely +set `PrivilegeSeparation` to `no` in `/etc/ssh/sshd_options`, just commenting out +the entry will not work as it is on by default. Also make sure you have +`/dev/random`, see below. -- cgit v1.2.3 From d80c36a319a6d4969b99aad5ae871a3e089c3446 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 24 Sep 2008 11:26:50 +0200 Subject: Rename as per request of Michael Banck. --- hurd/running/debian/faq/sshd.mdwn | 14 -------------- .../debian/faq/sshd_only_works_for_root_logins.mdwn | 14 ++++++++++++++ 2 files changed, 14 insertions(+), 14 deletions(-) delete mode 100644 hurd/running/debian/faq/sshd.mdwn create mode 100644 hurd/running/debian/faq/sshd_only_works_for_root_logins.mdwn diff --git a/hurd/running/debian/faq/sshd.mdwn b/hurd/running/debian/faq/sshd.mdwn deleted file mode 100644 index e98b5e03..00000000 --- a/hurd/running/debian/faq/sshd.mdwn +++ /dev/null @@ -1,14 +0,0 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] - -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] - -Privilege seperation does not work with Hurd currently. You need to explicitely -set `PrivilegeSeparation` to `no` in `/etc/ssh/sshd_options`, just commenting out -the entry will not work as it is on by default. Also make sure you have -`/dev/random`, see below. diff --git a/hurd/running/debian/faq/sshd_only_works_for_root_logins.mdwn b/hurd/running/debian/faq/sshd_only_works_for_root_logins.mdwn new file mode 100644 index 00000000..e98b5e03 --- /dev/null +++ b/hurd/running/debian/faq/sshd_only_works_for_root_logins.mdwn @@ -0,0 +1,14 @@ +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + +Privilege seperation does not work with Hurd currently. You need to explicitely +set `PrivilegeSeparation` to `no` in `/etc/ssh/sshd_options`, just commenting out +the entry will not work as it is on by default. Also make sure you have +`/dev/random`, see below. -- cgit v1.2.3