path: root/hurd/running/qemu.mdwn
diff options
authorThomas Schwinge <>2016-05-18 12:53:00 +0200
committerThomas Schwinge <>2016-05-18 12:53:00 +0200
commita443afde27a74f8d8bc13e1184ecf16d513d6147 (patch)
tree706d01d5ec6581778dfa0e56fe6085fabdb60935 /hurd/running/qemu.mdwn
parent2781d32ebd97fe0c93cb1b428c8b85ae0f23515e (diff)
parent60f15d9a60e7e0754c30bd8ec458982cd35540d3 (diff)
Merge remote-tracking branch 'savannah/master'
Conflicts: open_issues/profiling.mdwn
Diffstat (limited to 'hurd/running/qemu.mdwn')
1 files changed, 9 insertions, 19 deletions
diff --git a/hurd/running/qemu.mdwn b/hurd/running/qemu.mdwn
index dfc9cdd..ef89ec1 100644
--- a/hurd/running/qemu.mdwn
+++ b/hurd/running/qemu.mdwn
@@ -1,5 +1,5 @@
[[!meta copyright="Copyright © 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012,
-2013, 2014 Free Software Foundation, Inc."]]
+2013, 2014, 2016 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
@@ -32,7 +32,7 @@ Note that the following images are unofficial ones: they have been prepared by
volunteers and may not have been tested extensively.
* [Disk image](
- with a short intro on translators. Just start it with `qemu -m 512
+ with a short intro on translators. Just start it with `qemu -m 1G
-drive cache=writeback,file=disk_image.img`.
It should work without any of the configuration below. If you want to know what you can do
with it, please have a look at [[its_wikipage|hurd/running/qemu/babhurd_image]]. And when
@@ -50,12 +50,6 @@ Also you can use QEMU to easily try one of the
Instructions for creating a qemu image from the install CDs from debian installer can be found in the README alongside the d-i Hurd images: <>
-## Old method
-1. First thing is to install [[/QEMU]].
-2. A [[grub]] boot disk for the floppy disk image needed for booting. The [0\.97 version]( works fine. I downloaded it and renamed to `floppy.img`. Alternatively, the Debian grub-disk package (up till version 0.97-28) is fine as well.
-3. You will need a [Debian/Hurd installation CD]( K16 works fine.
# KVM acceleration
Check if your CPU supports kvm:
@@ -117,11 +111,6 @@ IRC, freenode, #hurd, 2012-08-29:
<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.
# HAP/EPT/NPT acceleration
Performance will be yet better if HAP (EPT or NPT) is available:
@@ -139,7 +128,7 @@ First off you will need to create a disk image using `qemu-img`. I have set mine
Next you will want to start up QEMU and begin the installation process.
- $ qemu -m 512 -drive cache=writeback,file=hd0.img -cdrom debian-7.0-hurd-i386-NETINST-1.iso -net nic,model=rtl8139 -net user
+ $ qemu -m 1G -drive cache=writeback,file=hd0.img -cdrom debian-7.0-hurd-i386-NETINST-1.iso -net nic,model=rtl8139 -net user
Now at his point do the regular install using `hd0` as your harddrive. Partition it and install the base system.
@@ -187,7 +176,7 @@ Once you have finished installing the base system (might take some time) the sys
Starting qemu/qemu-kvm:
- $ kvm -m 512 -net nic -net user,hostfwd=tcp::5555-:22 -drive cache=writeback,file=hd0.img -vga vmware
+ $ kvm -m 1G -net nic -net user,hostfwd=tcp::5555-:22 -drive cache=writeback,file=hd0.img -vga vmware
vmsvga_value_write: guest runs Linux.
Note: See below on port forwarding in the networking section.
@@ -301,8 +290,9 @@ If you want to connect from the host system to the Hurd system running in QEMU,
<youpi> there's not much better to do than that
<youpi> (patching resolv.conf inside the guest, or apply the ipv6 patch)
+This is fixed in qemu 2.6
-## Port Forwarding in QEMU
+## Port Forwarding in QEMU/KVM
(In the following we assume we use kvm!)
#### Logging in to Hurd from a terminal in your host system
@@ -310,7 +300,7 @@ This is the recommended way to work with a Command Line Interface (CLI) since al
a) with ssh (assuming you have installed openssh-server)
- $ kvm -m 512 -net nic -net user,hostfwd=tcp::5555-:22 -drive cache=writeback,file=hd0.img &
+ $ kvm -m 1G -net nic -net user,hostfwd=tcp::5555-:22 -drive cache=writeback,file=hd0.img &
Logging in to the running Hurd:
@@ -327,7 +317,7 @@ Copying files:
b) with telnet (assuming you have installed a telnet server, like telnetd)
- $ kvm -m 512 -net nic -net user,hostfwd=tcp::5556-:23 -drive cache=writeback,file=hurd-install.qemu &
+ $ kvm -m 1G -net nic -net user,hostfwd=tcp::5556-:23 -drive cache=writeback,file=hurd-install.qemu &
Logging in to the running Hurd:
@@ -368,7 +358,7 @@ Now it is time to start-up your QEMU Hurd system and get networking going in the
**Important:** Remember you may need to use the `-M isapc` or `-isa` flag if using an older version of the gnumach package.
- $ qemu -m 512 -drive cache=writeback,file=hd0.img -cdrom debian-K9-hurd-i386-CD1.iso -fda floppy.img -boot a -net nic -net tap
+ $ qemu -m 1G -drive cache=writeback,file=hd0.img -cdrom debian-K9-hurd-i386-CD1.iso -fda floppy.img -boot a -net nic -net tap
Once you have logged in as `root` run the `pfinet` translator with values that apply to your network. Think of your QEMU client as another computer in your network.