是否可以运行纯GNU?


23

GNU Project网页上,有一个名为“ 所有GNU软件包 ” 的小节,其中列出了GNU项目中的各种软件。

是否有使用这些软件包的GNU发行版,即仅在GNU软件包上运行的“纯” GNU操作系统?

我不是特别是否这将是一个有兴趣实用的操作系统,只是如果它是理论上可以运行GNU赫德纯粹GNU软件。如果不是,则仍必须实施哪种软件来实现该目标(即缺少什么)?

如果GNU Hurd是限制因素,那么与内核例外相比,使用Linux内核是否可以使用纯GNU OS


4
由于您可以引导仅运行的Linux(或Hurd)系统bash,因此无论如何都可以。
斯特凡Chazelas

@StephaneChazelas如果可能的话,这应该回答我的问题。我想知道是否有人建立了这样的分布作为概念证明。
Vilhelm Gray 2013年

3
更新:GNU项目开发了GNU Guix操作系统!
潘迪2015年

当然,您将没有GUI,因为X并非GNU项目
farhangfarhangfar

Answers:


20

GNU项目的明确目标是提供完整的开源/自由/免费操作系统。

是否有仅使用这些软件包的GNU发行版,即仅在GNU软件包上运行的“纯” GNU操作系统?

这里引用一个基于Hurd的官方听起来不错的GNU二进制发行版,它“由GNU Mach,Hurd,C库和许多应用程序组成”。但是,由于我找不到任何其他在线引用,因此它可能目前未维护。但这听起来确实符合您的标准。

我对它是否会是一个实用的操作系统并不特别感兴趣,即使从理论上讲可以仅使用GNU软件包运行GNU Hurd。

上一个问题的答案暗示着WRT赫德一个明显的答案。当然,这可能有助于更精确地定义什么才算是合理的完整“操作系统”。我将提供两个定义:

  1. 足以启动shell提示的软件集合。

  2. 符合POSIX标准的系统。这实际上是#1的严格版本,因为POSIX系统中的最高级别强制性实体将是shell。

这有点武断,因为为实现某些特殊目的而设计的操作系统可能根本不需要外壳。但是,在那种情况下,这将成为关于“特殊目的”性质的更具体的问题。

无论如何,答案是肯定的,尽管GNU某些事物的实现可能不是100%完全符合POSIX(并且有一些必需的实用程序,例如crontabGNU不提供)。以下是潜在组件:

  • 内核(赫德)
  • C库(glibc)
  • 基本实用程序(GNU core-utils等)
  • Shell(bash,这是一个GNU项目)

我没有包括引导加载程序,因为它不是OS的一部分-但无论如何grub也是GNU项目。


1
Debian Hurd也符合条件。
jordanm 2013年

5
@jordanm:我对此表示怀疑,因为基本安装可能包括非GNU软件的vixie cron。这为我的论文打了一个小孔。POSIX,因为这crontab是必需的实用程序。
goldilocks 2013年

2
@goldilocks:在Debian中,cron不是优先级requiredessential,因此您可以拥有一个没有它的Debian系统。
jordanm

7

Guix SD 是GNU认可的发行版之一,它是由GNU Project自行开发的!它带有GNU Guix软件包管理器。尽管它使用Linux-Libre内核,但是也支持与GNU Hurd一起使用。它使用GNU Shepherd初始化系统。

Guix系统发行版(GuixSD)是GNU Project开发的GNU操作系统的高级发行版,它尊重计算机用户的自由。

GuixSD是以GNU Guix软件包管理器为中心的GNU操作系统的发行版。它使用Linux-libre内核,并且正在开发对Hurd的支持。作为GNU发行版,它致力于尊重和增强其用户的自由。因此,它遵守GNU自由系统发行指南。

注意:它仍处于beta中,还不是纯GNU。


3

看一下GNU网站。他们在那里维护了一份GNU / Linux发行版列表:

它们仍在运行Linux内核,但可以修改为仅与GNU Hurd内核一起运行。

也有此链接涵盖了如何使用Hurd内核运行Debian:

该页面还具有指向其他一些发行版的链接,例如Arch + Hurd。


抱歉,我的问题可能有点误导。我很好奇在理论上是否可以仅在GNU软件包上运行操作系统(即没有X11等)。
Vilhelm Gray 2013年

2
这些都是基于linux的。它们是符合GNU关于自由软件的哲学的发行版,不一定是仅使用GNU软件的发行版。
goldilocks 2013年

看看另一个答案。但是,要回答您的问题,是的,您可以仅使用GNU来运行整个操作系统。
slm

@goldilocks-感谢您的澄清。
slm
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.