IRC, freenode, #hurd, 2014-03-10

<mcsim> scp doesn't work either
<braunr> what ?
<braunr> why wouldn't it ?
<mcsim> scp -P5555 -r ./hurd/ root@localhost:/root/src/
<mcsim> root@localhost's password:
<mcsim> The Hurd is not Linux. Make sure to read
<braunr> that shouldn't happen ...
<braunr> use tar maybe ?
<mcsim> the same with tar archive
<braunr> :/
<braunr> i don't know what to tell you
<braunr> i don't have that problem

IRC, freenode, #hurd, 2014-03-11

<teythoon> braunr: mcsims scp problem is b/c youpis images echo stuff from
the .bashrc or something
<teythoon> i wish he'd change that, as it is a reoccuring problem
<teythoon> youpi: ^
<teythoon> (didn't realize you are around >,<)
<teythoon> now that /etc/issue is displayed, you can put the welcome text
there
<braunr> teythoon: i see
<teythoon> mcsim: your ssh trouble are rooted in the .bashrc printing some
stuff to stdout
<mcsim> teythoon: thank you. It works now
<teythoon> :)

Unofficial Images

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
-drive cache=writeback,index=0,media=disk,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. And when
you use it, please tell me your experience with it! - ArneBab

Old method

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.

If your machine supports hardware acceleration, you should really use the kvm variant of qemu, as it speeds things quite a lot. Note however that kvm tends to make assumptions when accelerating things in the linux kernel, you may need some -no-kvm-something option. At the moment in Debian you need to pass

-no-kvm-irqchip

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: Debian bug #634149. We're preparing on a change
on our side to work around this.

Important: Since partman does not yet mount other partitions than / automatically at reboot, it is crucial that you choose this option for now.

Once you have finished installing the base system (might take some time) the system is rebooted and next boot will be from the hard disk. Now you are able to log in to your newly installed GNU/Hurd system.

Now take the number of sectors for the beginning of the partition and multiply it by the sector size. My partition starts at sector 63 and I have a sector size of 512 therefore my offset is 32256. For a start at 2048 the ofsset is 1048576.

# mount -o loop,offset=32256 hd0.img /mnt/diskimage

Having QEMU create virtual FAT disk images

The Hurd fatfs translator currently is read-only, but
for testing executables (etc.) that is enough. And it is much easier than
loop-mounting the file systems images. (Also you don't need `root' rights.)

Outgoing internet connections should just work then.
Testing it can be difficult with a minimal installation,
but apt-get update should work after you have filled out
/etc/apt/sources.list.
After that you should be able to install other network packages,
but note that ping doesn't work with QEMU's user-networking stack.

If you want to connect from the host system to the Hurd system running in QEMU, you can use port forwarding in QEMU or to setup something more advanced, like bridged networking.

IRC, freenode, #hurd, 2014-02-12

<braunr> youpi: also, the problems i had with regard to accessing the
debian repository were caused by a qemu bug where, in nat mode, qemu is
unable to handle dns requests if the host dns servers are ipv6 ones
<youpi> yes, we've noticed that with a student of mine
<youpi> you may be interested by a patch we submitted to qemu-devel, that
adds ipv6 support to -net user :)
<braunr> :)
<braunr> for now i directly change resolv.conf
<youpi> braunr: the issue is that you have only ipv6 nameservers, right?
<braunr> yes
<youpi> there's not much better to do than that
<youpi> (patching resolv.conf inside the guest, or apply the ipv6 patch)

Port Forwarding in QEMU

(In the following we assume we use kvm!)

Logging in to Hurd from a terminal in your host system

This is the recommended way to work with a Command Line Interface (CLI) since all your keyboard and locale settings are preserved.

This is due to a bug in QEMU, where the x86_64 QEMU binary fails to properly
truncate addresses in 32-bit mode. Waiting for id:"1386334344-24620-1-git-send-email-agraf@suse.de" to be applied and become
generally available, just use the qemu-system-i386 binary instead.

Related Links

These are links that users may find helpful.

Debian after install -- good source of information pertaining to your
system after installation.

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.