Wie genau basiert ein Linux-Betriebssystem auf einem anderen Linux-Betriebssystem?
Bei der Betrachtung verschiedener Linux-Varianten stoßen Sie häufig auf Ausdrücke wie "Ubuntu basiert auf Debian", aber was genau bedeutet das??
Die heutige Question & Answer-Sitzung wird dank SuperUser zur Verfügung gestellt - einer Unterteilung von Stack Exchange, einer Community-basierten Gruppierung von Q & A-Websites.
Die Frage
SuperUser Reader PLPiper versucht zu verstehen, wie Linux-Varianten funktionieren:
Ich habe in letzter Zeit eine ganze Reihe von Linux-Distributionen durchgesehen, um eine Vorstellung von der Umgebung zu erhalten. Ein Satz, der immer wieder auftaucht, lautet: "[Dieses Betriebssystem basiert auf einem anderen Betriebssystem". Zum Beispiel:
- Fedora basiert auf Red Hat
- Ubuntu basiert auf Debian
- Linux Mint basiert auf Ubuntu
Für jemanden, der aus einer Mac-Umgebung kommt, verstehe ich, wie "OS X basiert auf Darwin", aber wenn ich mir Linux Distros anschaue, frage ich mich, ob sie nicht alle auf Linux basieren ...?
Was bedeutet in diesem Zusammenhang genau, dass ein Linux-Betriebssystem ist beyogen auf ein anderes Linux-Betriebssystem?
Was genau bedeutet es, wenn wir davon sprechen, dass eine Version von Linux auf einer anderen Version basiert?
Die Antwort
SuperUser-Mitwirkender kostix bietet einen guten Überblick über das gesamte System:
Linux ist ein Kernel - Eine (komplexe) Software, die mit der Hardware arbeitet und eine bestimmte API (Application Programming Interface) sowie binäre Konventionen für deren exakte Verwendung (Application Binary Interface, ABI) für "User-Space" -Anwendungen exportiert.
Debian, RedHat und andere sind Betriebssysteme - komplette Software-Umgebungen, die aus dem Kernel und einer Reihe von User-Space-Programmen bestehen, die den Computer für sinnvolle Aufgaben (Senden / Empfangen von E-Mails, Durchsuchen des Internets, Fahren eines Roboters usw.) nützlich machen..
Jetzt jedes solche OS, während bereitstellen Meistens die gleiche Software (es gibt nicht so viele kostenlose Mail-Server-Programme oder Internet-Browser oder Desktop-Umgebungen), unterscheidet sich in den Vorgehensweisen und auch in ihren erklärten Zielen und Release-Zyklen.
Normalerweise werden diese Betriebssysteme als "Distributionen" bezeichnet. Dies ist, IMO, ein etwas falscher Begriff, der auf die Tatsache zurückzuführen ist, dass Sie technisch in der Lage sind, die gesamte erforderliche Software von Hand zu erstellen und auf einem Zielcomputer zu installieren, so diese Betriebssysteme verteilen Sie müssen diese Software entweder nicht erstellen (Debian, RedHat) oder sie erleichtern das Erstellen (Gentoo). Sie bieten normalerweise auch ein Installationsprogramm, mit dem das Betriebssystem auf einem Zielcomputer installiert werden kann.
Ein Betriebssystem erstellen und unterstützen ist a sehr Eine komplizierte Aufgabe, die eine komplexe und komplizierte Infrastruktur erfordert (Hochladen von Warteschlangen, Erstellen von Servern, Bug-Tracker und Archivservern, Mailing-Listen-Software usw.) und Mitarbeiter. Dies stellt offensichtlich eine hohe Barriere für die Schaffung eines neuen, völlig neuen Betriebssystems dar. Zum Beispiel stellt Debian ca. 37k-Pakete für fünf Hardware-Architekturen - stellen Sie fest, wie viel Arbeit in die Unterstützung dieses Materials gesteckt wird.
Trotzdem, wenn jemand denkt brauchen Um ein neues Betriebssystem zu erstellen, kann es sinnvoll sein, ein Betriebssystem zu verwenden bestehender Fundament zum Aufbau. Und genau hier setzen Betriebssysteme an basierend auf anderen Betriebssystemen entstehen. Zum Beispiel baut Ubuntu auf Debian auf, indem es die meisten Pakete importiert und nur einen kleinen Teil der Pakete neu verpackt, eigene Pakete verpackt, eigene Grafiken, Standardeinstellungen, Dokumentation usw. bereitstellt.
Beachten Sie, dass es Unterschiede zu dieser "basierend auf" Sache gibt. Zum Beispiel fördert Debian die Schaffung von "reinen Mischungen" von sich selbst: Distributionen, die Debian auf direktem Wege verwenden, und fügen einfach eine Reihe von Paketen und anderen Dingen hinzu, die nur für eher kleine Benutzergruppen geeignet sind, beispielsweise für Personen, die in Bildung oder Medizin oder Musik arbeiten Industrie etc.
Eine andere Wendung ist das nicht alles Diese Betriebssysteme basieren auf Linux. Debian bietet beispielsweise auch FreeBSD- und Hurd-Kernel an. Sie haben aber recht winzige Benutzergruppen.
Haben Sie der Erklärung etwas hinzuzufügen? Ton aus in den Kommentaren. Möchten Sie mehr Antworten von anderen technisch versierten Stack Exchange-Benutzern lesen? Hier geht es zum vollständigen Diskussionsthread.