Ist es möglich, reines GNU zu betreiben?


23

Auf der GNU-Projekt-Webseite gibt es einen Unterabschnitt namens " Alle GNU-Pakete ", in dem die verschiedenen Programme im GNU-Projekt aufgelistet sind.

Gibt es GNU-Distributionen, die nur diese Pakete verwenden - dh ein "reines" GNU-Betriebssystem, das nur auf GNU-Paketen läuft?

Ich bin nicht besonders interessiert , ob dies ein wäre praktisches Betriebssystem, nur wenn es theoretisch möglich ist , läuft GNU Hurd mit rein den GNU - Paketen . Wenn nicht, welche Software muss noch implementiert werden, um dieses Ziel zu erreichen (dh was fehlt)?

Wenn GNU Hurd der begrenzende Faktor ist, als wenn eine Ausnahme für den Kernel gemacht wird, wäre ein reines GNU-Betriebssystem unter Verwendung des Linux- Kernels möglich?


4
Da Sie ein Linux- (oder Hurd-) System starten können, das nur ausgeführt wird bash, ist dies in jedem Fall möglich.
Stéphane Chazelas

@StephaneChazelas Das sollte meine Frage beantworten, wenn es möglich ist. Ich frage mich, ob jemand eine solche Distribution als Proof of Concept eingerichtet hat.
Vilhelm Grey

3
Update: Es gibt ein GNU Guix- Betriebssystem, das von GNU Project entwickelt wurde!
Pandya

Natürlich hast du keine GUI, weil X kein GNU-Projekt ist
farhangfarhangfar

Antworten:


20

Das explizite Ziel des GNU-Projekts ist die Bereitstellung eines vollständigen Open Source / libre / free-Betriebssystems.

Gibt es GNU-Distributionen, die nur diese Pakete verwenden - dh ein "reines" GNU-Betriebssystem, das nur auf GNU-Paketen läuft?

Es ist eine Referenz hier zu einer offiziellen klingenden GNU binäre Distribution basierte auf Hurd die „besteht aus GNU Macht, den Hurd, die C - Bibliothek und viele Anwendungen“. Möglicherweise wird es jedoch gerade gewartet oder nicht, da ich keine anderen Online-Verweise darauf gefunden habe. Aber es hört sich so an, als würde es Ihren Kriterien entsprechen.

Es interessiert mich nicht besonders, ob dies ein praktisches Betriebssystem ist, nur wenn es theoretisch möglich ist, GNU Hurd nur mit den GNU-Paketen auszuführen.

Die Antwort auf die vorherige Frage impliziert eine offensichtliche Antwort WRT Hurd. Natürlich könnte es hilfreich sein, genauer zu definieren, was als einigermaßen vollständiges "Betriebssystem" gelten würde. Ich werde zwei Definitionen bereitstellen:

  1. Eine Sammlung von Software, die ausreicht, um eine Shell-Eingabeaufforderung zu starten.

  2. Ein System, das POSIX-Kriterien erfüllt. Dies ist im Wesentlichen eine strengere Version von # 1, da die Shell die oberste obligatorische Entität in einem POSIX-System sein würde.

Dies ist etwas willkürlich, da ein Betriebssystem, das für einen bestimmten Zweck entwickelt wurde, möglicherweise überhaupt keine Shell benötigt. In diesem Fall würde sich jedoch die Frage nach der Art des "besonderen Zwecks" konkretisieren.

In jedem Fall lautet die Antwort " Ja" , obwohl die Implementierung einiger Dinge durch GNU möglicherweise nicht zu 100% POSIX-konform ist (und es eine Handvoll erforderlicher Dienstprogramme gibt, wie z. B. die crontab, die GNU nicht bereitstellt). Hier sind die möglichen Komponenten:

  • Kernel (Hurd)
  • C Bibliothek (glibc)
  • Grundlegende Dienstprogramme (GNU-Core-Utils usw.)
  • Shell (Bash, ein GNU-Projekt)

Einen Bootloader habe ich nicht mitgeliefert, da dieser nicht zum Betriebssystem gehört - aber auf jeden Fall grubauch ein GNU-Projekt.


1
Debian Hurd erfüllt auch die Kriterien.
Jordan

5
@jordanm: Ich bezweifle es, da die Basisinstallation wahrscheinlich z. B. vixie cron enthält, eine Nicht-GNU-Software. Dies stanzt ein kleines Loch in meine These bezüglich. POSIX crontabist jedoch ein erforderliches Dienstprogramm.
Goldlöckchen

2
@goldilocks: In Debian hat crones keine Priorität requiredoder essential, so dass Sie ein Debian-System ohne dieses haben können.
Jordan

7

Guix SD , eine der von GNU unterstützten Distributionen , wurde vom GNU-Projekt selbst entwickelt! Es kommt mit GNU Guix-Paket-Manager. Es verwendet zwar den Linux-Libre-Kernel, unterstützt jedoch auch die Arbeit mit GNU Hurd. Es benutzt das GNU Shepherd Init System.

Die Guix System Distribution (GuixSD) ist eine erweiterte Distribution des GNU-Betriebssystems, das vom GNU-Projekt entwickelt wurde und die Freiheit der Computerbenutzer respektiert.

GuixSD ist eine Distribution des GNU-Betriebssystems, die sich auf den GNU Guix-Paketmanager konzentriert. Es wird der Linux-libre-Kernel verwendet und an der Unterstützung für den Hurd wird gearbeitet. Als GNU-Distribution verpflichtet es sich, die Freiheit seiner Benutzer zu respektieren und zu verbessern. Als solches befolgt es die GNU Free System Distribution Guidelines.

Hinweis: Es befindet sich noch in der Beta und ist noch keine reine GNU.


3

Werfen Sie einen Blick auf die GNU-Website. Sie führen dort eine Liste der GNU / Linux-Distributionen:

Auf diesen wird immer noch der Linux-Kernel ausgeführt, sie können jedoch so angepasst werden, dass sie nur mit dem GNU Hurd-Kernel ausgeführt werden.

Außerdem gibt es diesen Link, der beschreibt, wie man beispielsweise Debian mit dem Hurd-Kernel ausführt:

Diese Seite enthält auch Links zu einigen anderen Distributionen wie Arch + Hurd.


Es tut mir leid, meine Frage ist wahrscheinlich etwas irreführend. Ich bin gespannt, ob es theoretisch möglich ist, ein Betriebssystem ausschließlich auf GNU-Paketen (dh ohne X11 usw.) auszuführen.
Vilhelm Grey

2
Das sind alles Linux-basierte. Es sind Distributionen, die der GNU-Philosophie über freie Software entsprechen, nicht unbedingt Distributionen, die nur GNU-Software verwenden.
Goldlöckchen

Schauen Sie sich die andere Antwort an. Um Ihre Frage zu beantworten: Ja, Sie können ein ganzes Betriebssystem nur mit GNU ausführen.
SLM

@goldilocks - danke für die Klarstellung.
SLM
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.