(2015.5)
GNU Hurdカーネルを使った、Debianによるディストリビューション。
GNU Hurdは、Machマイクロカーネル + ユーザランドサーバによって, UNIXを実装しようとするプロジェクト.
Mach マイクロカーネルは往年の NeXTSTEPでも使われていた。MkLinux というのもある。
GNU Hurd プロジェクトが始まったのは 1991年、最初のリリース version 0.2 が出たのが 1997年、か? いずれにしても、非常に昔から, 続いているのか続いていないのかよく分からない。
[2023.8] Debian GNU/Hurd 2023 が 2023年6月にリリースされている。Debian 12 "Bookworm" ベース。
[2020.10] Debian GNU/Hurd 2019 が 2019年7月にリリースされている。
This is a snapshot of Debian "sid" at the time of the stable Debian "buster" release (July 2019), so it is mostly based on the same sources. It is not an official Debian release, but it is an official Debian GNU/Hurd port release. Debian GNU/Hurd is currently available for the i386 architecture with about 80% of the Debian archive, and more to come!
- An ACPI translator is available, it is currently only used to shut down the system.
- The LwIP TCP/IP stack is now available as an option.
- A PCI arbiter has been introduced, and will be useful to properly manage PCI access, as well as provide fine-grain hardware access.
- Support for LLVM was introduced.
- New optimisations include protected payloads, better paging management and message dispatch, and gsync synchronization.
Debian GNU/Hurd 2015 が 2015年4月29日にリリースされている。
Since the last snapshot release coinciding with "wheezy", the init system has been switched to sysvinit for a more Debian-like experience. Further changes since the last snapshot include:
- The core GNU Hurd and GNU Mach packages were updated to versions 0.6 and 1.5, respectively. Besides numerous other improvements, they bring vastly improved stability under load and prolonged uptime.
- The networking drivers were migrated to user-space drivers using the NetDDE framework and a Linux-2.6.32 codebase.
Notable new or upgraded packages which required considerable porting effort and/or are known to work well on Debian GNU/Hurd include Iceweasel 31 ESR, XFCE4 4.10, X.org 7.7 and Emacs 24.4.
CDで9枚組、DVDで3枚組と、ずいぶん大きい。
次のところから debian-hurd-2015-i386-NETINST-1.iso を取ってくる。NETINST は使えない。DVD版の1枚目を使う。iso-dvd/
にあるもの。
そのディスクからブートする。
Language は日本語を選ぼう。最初、English を選んだら、タイムゾーンが米国しか選択できず、困った。
あと、パッケージを選ぶところで、GNOME やCinnamon が選べるが、いずれもインストールに失敗する。最初はデスクトップ環境は入れないのがよさそう。
インストールが終わったら、再起動で、ログイン画面が立ち上がる。
初期設定方法は, 公式のこちらが詳しい; Debian GNU/Hurd Configuration
/etc/network/interfaces
ファイルで固定IPアドレスを設定。以降は SSH で入れる。
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). source /etc/network/interfaces.d/* # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto /dev/eth0 iface /dev/eth0 inet static address 192.168.0.24 netmask 255.255.255.0 gateway 192.168.0.1 dns-nameservers 192.168.0.9 # この行不要?
/etc/hosts
の修正も忘れずに。
/etc/resolv.conf
ファイルを消すと ping などで名前解決に失敗するので, /etc/resolv.conf
も必要。上記の dns-nameservers
は不要かも。
システム情報は次になる。
$ uname -a GNU debianhurd 0.6 GNU-Mach 1.4+git20150409-486/Hurd-0.6 i686-AT386 GNU
Debian GNU/Hurd 2023 では次になる。plum
はホスト名
GNU plum 0.9 GNU-Mach 1.8+git20230526-486/Hurd-0.9 i686-AT386 GNU
コンソールで JPキーボードの[¥] [\]キーを認識しない。これは困った. (未解決)
ファイルシステムは ext2. さすがに見劣りする。インストール直後の状態。
root@plum:~# df ファイルシス 1K-ブロック 使用 使用可 使用% マウント位置 /dev/hd0s1 2007040 1189136 717552 63% / /dev/hd0s5 993280 197008 746608 21% /var /dev/hd0s8 4130816 40812 3883464 2% /home /dev/hd0s7 251904 8056 231256 4% /tmp none 205788 52 205736 1% /run none 5120 4 5116 1% /run/lock root@plum:~# mount typed:part:1:device:hd0 on / type ext2fs (rw,relatime,no-inherit-dir-group) /dev/hd0s8 on /home type ext2 (rw,relatime,no-inherit-dir-group) /dev/hd0s7 on /tmp type ext2 (rw,relatime,no-inherit-dir-group) /dev/hd0s5 on /var type ext2 (rw,relatime,no-inherit-dir-group)
/hurd
以下に実行ファイルがいろいろ. これがサーバ群か?
acpi exec firmlink init mtab pci-arbiter remap storeio acpi.static exec.static ftpfs iso9660fs netdde pci-arbiter.static rumpdisk streamio auth ext2fs fwd iso9660fs.static netdde.static pfinet rumpdisk.static symlink console ext2fs.static hello lwip new-fifo pflocal run tarfs crash fakeroot hello-mt mach-defpager nfs proc shutdown term cvsfs fatfs hostmux magic nsmux procfs smbfs tmpfs devnode fifo httpfs mboxfs null proxy-defpager socketio usermux eth-multiplexer filter ifsock memfs password random startup xmlfs