While many people call the GNU system GNU/Hurd this is not strictly true. The kernel is GNU Mach not the Hurd. The Hurd is a series of servers which run on top of the microkernel, GNU Mach. Both the Hurd and GNU Mach are part of the GNU project while the Linux kernel is an independent project.
The easiest (and well-tested) method of trying Debian GNU/Hurd is to use a virtual machine via KVM. Some pre-installed images are available on http://ftp.debian-ports.org/debian-cd/hurd-i386/current/README.txt, but one can also use the Debian Installer to install in KVM or a native machine (but hardware support vary, so it is more recommended to give a try with KVM).
Using the Debian Installer installation CD-ROM
A hurd-i386 port of the standard Debian Installer can be downloaded from http://ftp.debian-ports.org/debian-cd/hurd-i386/current/. It works like the usual Linux port of the Debian Installer, i.e. automatically, except a few details:
- Make sure to enable swap space, else Mach will have troubles if you use all your memory.
- Do not mount a separate partition on
/usr, else the boot will fail.
- Read the notes about manual installation which document some of the final configuration steps.
Instructions for burning CDs from the images can be found in the Debian CD FAQ.
The Hurd uses extensions to the ext2 file system, the call is
mke2fs -o hurd /dev/[Hurd partition]. The
installation CDs use this when creating Hurd partitions.
Making a GRUB boot-disk
If you are installing the Hurd alone on your system, you can let the installer install GRUB itself. If you are installing the Hurd along an existing system, you will most probably want to be able to choose between both. If your existing system is Linux, you can probably simply run update-grub and it will detect your newly-installed Hurd system. Otherwise, or if you do not manage to boot the Hurd that way, you can use a GRUB boot-disk.
Install the package grub-disk or grub-rescue-pc, they contain a GRUB floppy image. You can use "dd" if you are working in GNU/Linux or rawrite if you are working in MS.
Make certain that you understand Linux, GRUB and Hurd methods of naming drives and partitions. You will be using all three and the relationship between them can be confusing.
Hurd uses different partition names to Linux, so be careful. IDE hard disks are numbered in order, beginning from hd0 for the primary master and its slave hd1, followed by the secondary master hd2 and its slave hd3. SCSI drives are also numbered in absolute order. They will always be sd0, sd1, and so on regardless of whether the two drives are SCSI id 4 and 5 or whatever. Experience has shown that CD-ROM drives can be tricky. More about this later.
Linux-style partitions are always called sn when using the Hurd, where n is the partition number, so the first partition on the first IDE drive will be hd0s1, the third partition on the second SCSI drive will be sd1s3, and so on.
GRUB1 has yet another partition naming system. It calls partitions (hdN,n), but this time the disk number and partition number are both zero indexed, and the disks run in order, all the IDE disks first, and the SCSI ones second. This time, the first partition on the first IDE drive will be (hd0,0). GRUB2 does the same, but the partition number is one indexed, so in that case it will be (hd0,1). To really cause a confusion, (hd1,2) could refer to the first SCSI drive if you only have one IDE drive, or it could refer to the second IDE drive. So it is important that you have worked out the various names of your partitions before you start.
Enjoy the Hurd.