GNU Hurd – microkernel and part of GNU Project.
Hurd means “Hird of Unix-Replacing Daemons”,
Hird – “Hurd of Interfaces Representing Depth. Total recursion! Development started in 1990 (before Linux kernel) as part of plans to create fully free and open source operation system. Unlike the Linux kernel Hurd have a lot of system daemons (you can see it on video) run by GNU Mach microkernel and some specific system protocols. Popularity of Linux lowered Hurd’s priority, but project progress all this 25+ years.
Today you can use GNU/Hurd with Debian GNU/Hurd and Arch Hurd (LiveCD). New hardware and UEFI support are a big problem. Work as the virtual machine is good, supported also some Linux-based display manages and LXDE. See also GNU Hurd hardware limitation.
Run in Qemu
Download Debian/Hurd image, unpack it and run in qemu with 1 GB RAM:
$ wget http://people.debian.org/~sthibault/hurd-i386/debian-hurd.img.tar.gz $ tar -xz < debian-hurd.img.tar.gz $ qemu -m 512 -drive cache=writeback,file=$(echo debian-hurd-*.img)
Some information about memory: Hurd without GUI use 30-40 MB RAM, with IceWM – 140-150 MB RAM.
Another way – use Debian installer. We need to create virtual disk image and run the installer:
$ qemu-img create hd0.img 5G $ qemu -m 1G -drive cache=writeback,file=hd0.img -cdrom debian-7.0-hurd-i386-NETINST-1.iso -net nic,model=rtl8139 -net user
KVM officially supported, but Debian GNU/Hurd don’t work with qemu-kvm on my Fedora Rawhide. Log in with user
root, empty password and we can see Hurd in action:
IceWM window manager isn’t super usable, but LXDE also supported. GNU/Hurd is not a good choice as an OS for your parents and can work with some tasks: programming with Vim, Emacs, nano, gcc and Python; text editing; photo management with GIMP; mail and FTP server; web – Iceweasel, elinks, w3m; many others. Web surfing is slow, see video in top. Debian has ~70k packages, for Hurd port available only ~800. Very important thing – GNU/Hurd support only x86 32bit CPU in time that many top Linux distribution stopped x86 support. Porting a new software to Hurd may be harder.
GNU tools work in Linux and Hurd. If you know basic Linux commands – it’s great!
sed etc also works nice in Hurd. But some system settings are different:
# Network settings in qemu: # settrans -afgp /servers/socket/2 /hurd/pfinet -i eth0 -a 10.0.2.15 -g 10.0.2.2 -m 255.255.255.0
Apt-get and many of console tools from Hurd repository also works nicely. Basic filesystem – ext2; vfat and fat32 supported.
Living project with 25-years history is a great achievement. Hardware support – one of the biggest problems, but can be usable in a virtual machine. Software for basic use cases available. Great OS for experiments and education, hard for everyday use. Linux and OS X now dominate in Unix-like world, but maybe Hurd can replace it in future – never say never.
You can find more information on GNU website.