summaryrefslogtreecommitdiff
path: root/hurd/running
diff options
context:
space:
mode:
Diffstat (limited to 'hurd/running')
-rw-r--r--hurd/running/chroot.mdwn54
-rw-r--r--hurd/running/debian/after_install.mdwn4
-rw-r--r--hurd/running/debian/dhcp.mdwn12
-rw-r--r--hurd/running/qemu.mdwn10
4 files changed, 73 insertions, 7 deletions
diff --git a/hurd/running/chroot.mdwn b/hurd/running/chroot.mdwn
new file mode 100644
index 00000000..29b00a8f
--- /dev/null
+++ b/hurd/running/chroot.mdwn
@@ -0,0 +1,54 @@
+[[!meta copyright="Copyright © 2012 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]]."]]"""]]
+
+This documents the currently-needed tricks to successfully build a
+[[glibc/chroot]] in GNU/Hurd.
+
+# Preparation
+
+For proper translator startup, the chroot storage needs to be handled by a
+separate translator, for instance:
+
+ # dd [...] < /dev/zero > storage
+ # mke2fs storage
+ # settrans -c chroot /hurd/ext2fs $PWD/storage
+
+# Unpack
+
+Debootstrap should be able to build the content:
+
+ # debootstrap sid chroot
+
+# Tricks
+
+One current issue to know about chroots is that since passive translators (e.g.
+`/servers/socket/1`) are started by the root translator, which is not aware
+of the chrooting, these passive translators are started non-chrooted, leading to
+a few issues.
+[[!tag open_issue_hurd]]
+
+## Sockets
+
+Since the passive [[translator/pflocal]] translator will not be chrooted, local
+socket creation
+will actually happen in the root filesystem. To make things work correctly the
+programs inside the chroot need to be able to access them:
+
+ # settrans chroot/servers/socket/1 /hurd/firmlink /servers/socket/1
+ # settrans chroot/tmp /hurd/firmlink /tmp
+ # settrans -c chroot/var/lib/dbus /hurd/firmlink /var/lib/dbus
+
+## Network
+
+Unless using a separate IP for the chroot, it is preferrable to share the
+[[translator/pfinet]] translator:
+
+ # settrans chroot/servers/socket/2 /hurd/firmlink /servers/socket/2
+ # settrans chroot/servers/socket/26 /hurd/firmlink /servers/socket/26
diff --git a/hurd/running/debian/after_install.mdwn b/hurd/running/debian/after_install.mdwn
index 419940a7..72ea70a9 100644
--- a/hurd/running/debian/after_install.mdwn
+++ b/hurd/running/debian/after_install.mdwn
@@ -1,6 +1,8 @@
First steps after installation.
-See http://www.debian.org/ports/hurd/hurd-install for configuration bits and tips and tricks.
+See <http://www.debian.org/ports/hurd/hurd-install> for configuration bits and
+tips and tricks.
+
# Setup GRUB
diff --git a/hurd/running/debian/dhcp.mdwn b/hurd/running/debian/dhcp.mdwn
index 8d351aae..afa46799 100644
--- a/hurd/running/debian/dhcp.mdwn
+++ b/hurd/running/debian/dhcp.mdwn
@@ -1,4 +1,4 @@
-[[!meta copyright="Copyright © 2011 Free Software Foundation, Inc."]]
+[[!meta copyright="Copyright © 2011, 2012 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
@@ -10,16 +10,16 @@ License|/fdl]]."]]"""]]
[[!tag open_issue_porting]]
-In order to use DHCP, you need to install the `ifup` and `isc-dhcp-client`
-packages, and manually create the following two symbolic links:
+In order to use DHCP, you need to install the `ifupdown` and `isc-dhcp-client`
+packages, and manually create the following symbolic link:
- # ln -s ../rcS.d/S06ifupdown-clean ../rcS.d/S11networking /etc/rc.boot/
+ # ln -s ../rcS.d/S10networking /etc/rc.boot/
-During execution at boot time, the `S11networking` script will emit some error
+During execution at boot time, the `S10networking` script will emit some error
messages while trying to configure the loopback interface. These are not
fatal.
-Debian GNU/Hurd doesn't currently execute's Debian standard `/etc/rcS.d/*` boot
+Debian GNU/Hurd doesn't currently execute Debian standard `/etc/rcS.d/*` boot
scripts, but has its own `/libexec/rc` script -- which integrates scripts from
`/etc/rc.boot/` instead.
diff --git a/hurd/running/qemu.mdwn b/hurd/running/qemu.mdwn
index 512ea602..3648c7d6 100644
--- a/hurd/running/qemu.mdwn
+++ b/hurd/running/qemu.mdwn
@@ -105,6 +105,16 @@ If your machine supports hardware acceleration, you should really use the kvm va
to the command line, see below, if you are running Linux kernels 2.6.37 or 2.6.38 else IRQs may hang sooner or later. The kvm irq problems will be solved in kernel 2.6.39.
+IRC, freenode, #hurd, 2012-08-29:
+
+ <braunr> youpi: do you remember which linux versions require the
+ -no-kvm-irqchip option ?
+ <braunr> your page indicates 2.6.37-38, but i'm seeing weird things on
+ 2.6.32
+ <braunr> looks like a good thing to use that option all the time actually
+ <gnu_srs> seems like kvm -h says: -no-kvm-irqchip and man kvm says:
+ -machine kernel_irqchip=off
+
/!\ Note that there are known performance issues with KVM on Linux 2.6.39
kernels, compared to 2.6.32: [[!debbug 634149]]. We're preparing on a change
on our side to work around this.