The Hurd is a set of servers running on top of the GNU Mach microkernel. Together they build the base for the GNU operating system.
Currently, Debian is only available for Linux and kFreeBSD, but with Debian GNU/Hurd we have started to offer GNU/Hurd as a development, server and desktop platform, too.
安装Debian GNU/Hurd
可以从 Index of /cdimage/ports/latest/hurd-i386 下载Debian GNU/Hurd 2019 release或更新的快照。
Index of /~sthibault/hurd-i386/installer/cdimage 提供了未经测试的每日快照,不建议使用它安装系统。
安装系统前,请务必阅读 https://cdimage.debian.org/cdimage/ports/stable/hurd-i386/README.txt 和 https://www.debian.org/ports/hurd/hurd-install。
安装程序中的细节:
- 必须启用交换分区
- 不要为
/usr
单独分区 - Debain GNU/Hurd 2019 release NETINST ISO只能用来安装基本系统。最好使用DVD进行安装。
- 安装Gnome,KDE,LXQt桌面环境时会失败,推荐使用LXDE桌面环境。
配置Debian GNU/Hurd
配置网络
安装完成后网络应该正常工作,可以通过inetutils-ping
软件包提供的ping
命令测试网络。如果网络不能正常工作,参见 Debian – Debian GNU/Hurd — Configuration进行手动配置。
用户权限
与Debian GNU/Linux中一样,您需要将用户加入sudo
组中以允许他们使用sudo
提权,操作方法是类似的。文章以下的部分将默认您为您的用户启用了sudo
。
配置Apt
您将需要调整/etc/apt/source.list
以获得更新。如果您安装的是Debain GNU/Hurd 2019 release,建立文件/etc/apt/apt.conf.d/99ignore-valid-until
,内容包括
Acquire::Check-Valid-Until "false";
然后编辑/etc/apt/source.list
,使用snapshot.debian.org
:
deb http://snapshot.debian.org/archive/debian-ports/20190626T235959Z/ sid main
deb-src http://snapshot.debian.org/archive/debian/20190626T235959Z/ sid main
deb [trusted=yes] https://snapshot.debian.org/archive/debian-ports/20190626T235959Z/ unreleased main
最后运行
sudo apt update
sudo apt install apt-transport-https debian-ports-archive-keyring
sudo apt update
如果您安装的是较新的快照版本,编辑/etc/apt/source.list
以使用deb.debian.org/debian-ports
:
deb http://deb.debian.org/debian-ports unstable main
deb-src http://deb.debian.org/debian unstable main
deb http://deb.debian.org/debian-ports unreleased main
最后运行
sudo apt update
sudo apt install debian-ports-archive-keyring
sudo apt update
Hurd console
Hurd console提供虚拟终端。您可以通过检查环境变量TERM
的值来判断您是否在Hurd console下。如果以伪图形界面安装,它应当自动启动,否则可以以下命令手动启动它:
sudo console -d vga -d pc_mouse --repeat=mouse -d pc_kbd --repeat=kbd -d generic_speaker -c /dev/vcs
如果没有问题,可以编辑文件/etc/default/hurd-console
,将
ENABLE="false"
修改为
ENABLE="true"
以在启动时自动启动它。
X和桌面环境
使用X的前提条件是环境变量TERM
的值为hurd,及文件/dev/cons/kbd/
和dev/cons/mouse
存在。您还需要运行命令
sudo dpkg-reconfigure x11-common xserver-xorg-legacy
以允许所有用户运行Xorg。
您也需要建立文件/etc/X11/xorg.conf
以启用 control-alt-backspace 快捷键:
Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "XkbOptions" "terminate:ctrl_alt_bksp"
EndSection
最后,您需要安装相关的软件包。
- (必须)安装软件包
xorg
,rxvt
。 - (必须)安装窗口管理器:
-
twm
,icewm
,openbox
应该都能工作。
-
- (可选)如果您想要让X在启动时自动启动,您还需要安装显示管理器:
-
xdm
能够正常工作。 -
lightdm
不能工作。 -
lxdm
,gdm
,sddm
尚未移植。
-
- (可选)您可以通过安装桌面环境来提供完整的用户界面:
- KDE,Gnome,LXQt没有完全移植。
- LXDE,MATE能够正常工作。
- MATE不能正常工作。
运行命令startx /usr/bin/yourwm
以启动X。如果X不能正常启动,检查日志/var/log/Xorg.0.log
。
关闭系统
要关闭您的系统,只需简单地使用halt
,poweroff
或reboot
。如果有时因为某些守护进程没有正确终止而导致系统挂起,你可以使用halt-hurd
、poweroff-hurd
、reboot-hurd
。它们实际上并没有关闭守护进程,而是正确地将数据同步到磁盘。
屏幕截图
问题
- 我没有为
http://deb.debian.org/debian-port
找到任何镜像,因此apt
使用起来非常慢。 - Gnome和KDE的部分软件已经被移植( Debian – Debian GNU/Hurd 报告称大约有3/4的软件包已经被移植),然而并不完全,因此仍然存在一些问题。
- 是否有LXDE用户知道如何自定义LXDE桌面的壁纸?我在
lxappearance
程序里没有发现这一选项。 - 包管理器前端的可用性:
-
muon
:无法安装python3-xapian
,依赖于python3
(< 3.6) -
apper
:尚未移植 -
plasma-discover
:无法安装plasma-discover-common
(=5.19.5-4),software-properties-kde
的依赖问题(推荐systemed
)
-
synaptic
:崩溃** Error:pkexec.c:719:main: assertion failed: (polkit_unix_process_get_start_time) (POLKIT_UNIX_PROCESS (subject)) >0) Bail out!Error:pkexec.c:719:main: assertion failed: (polkit_unix_process_get_start_time) (POLKIT_UNIX_PROCESS (subject)) >0) Aborted
-
gnome-software
:尚未移植
-
-
postgres
不可用:致命错误:对用户"postrges"的对等认证失败 日志:对等认证在这个平台上不支持
-
kgpg
崩溃:使用gdb
调试,gdb
崩溃
然后使用gdb调试gdb,得到的调用堆栈为:/build/gdb-MOekYk/gdb-10.1/gdb/inferior.c:293: internal-error: inferior* find_inferior_pid(process_stratum_target*, int): Assertion `pid != 0' failed. A problem internal to GDB has been detected, funther debugging may prove unreliable.
0x01e6969c in mach_msg_trap () at ./build-tree/hurd-i386-libc/mach/mach_msg_trap.S:2 2 ./build-tree/hurd-i386-libc/mach/mach_msg_trap.S:没有那个文件或目录
-
texmaker
无法安装:依赖于libsynctex1
和latex-beamer
,但是这些软件包都已经不再存在。texworks
和texstudio
均正常工作。