Unterschied von Linux Distributionen "Unter der Haube"

Hinweis: In dem Thema Unterschied von Linux Distributionen "Unter der Haube" gibt es 17 Antworten auf 2 Seiten. Der letzte Beitrag () befindet sich auf der letzten Seite.
  • wrohr
    Schöne Seite hast du da ... sehr erbaulich :thumbup:

  • Leute, warum versteht mich nur jeder falsch?
    Es geht mir doch gerade eben darum keine dumme "Meine Distribution ist die beste"-Diskussion anzustiften, sondern mal zur Abwechslung über das Innenleben der verschiedenen Distributionen zu plaudern!



    @Phil-Latio:

    Zitat

    Jemand hat mal in diesem Forum eine nette Analogie gepostet: Bei Distributionen ist es wie mit Autos. Die Grundfunktionen (Motor, Lenkrad, Pedale) sind bei allen gleich. Der Rest drumherum ist jedoch von jedem Autohersteller geringfügig anders aufgebaut worden. Das "beste" Auto gibt es aber dennoch nicht. Jeder hat halt einen persönlichen Geschmack.

    Den Vergleich mit den Autos finde ich sehr passend.
    Der Motor ist überall Ottomotor (z.B.).. aber jeder Hersteller bastelt technisch am Motor und drumherum herum (Größerer Krümmer, Turbolader, größeres Verdichtungsverhältnis, Abgasrückführung, Ventilsteuerung, ....) um die Funktionalität des jeweiligen Autos zu optimieren. Dabei stehen z.B. Geschwindigkeit, Verbrauchsersparnis, Materialkosten, Sicherheitsaspekte..etc im Vordergrund.


    Und genau das würde mich interessieren:
    Was machen die verschiedenen Distributionen um die Maschine zu optimieren? Kernel-Modifikationen (wenn ja welche)? Dienste ab- oder zuschalten? Bearbeitungsvorgänge wie auch immer code-mäßig beschleunigen? Andere Programmiersprachen verwenden?... Was unterscheidet hier Ubuntu, Red Hat und Co. so wie BMW, Ford, Toyota? Zum Thema Auto gibt es mannigfaltige Berichte zu den jeweiligen herstellereigenen Technologien zu finden, bei Linux lese ich immer nur vom Desktop, dem Installer und der Software..
    Bei Autos lese ich ja auch nicht nur vom Design, der Polsterung und den Felgen, oder?


    wrohr:
    Die Seite ist wirklich klasse! :rolleyes:

    Für den Inhalt des Beitrages 70202 haftet ausdrücklich der jeweilige Autor: thomasKR

  • Hier mal ein detaillierter Post zum Thema "Unter der Haube" bei OpenSuse13.1:


    "Leistung
    Verschiedene Patche wurden in der Zwischenzeit eingefügt. Das Ziel: Leistungssteigerung. Zum Beispiel: page reclaim, eine Kernelfunktion, die den Speicher bereinigt. Sie wird in Situationen benötigt, bei denen große Datenmengen übertragen werden, wie beim Kopieren eines Films zu oder von einem USB-Stick. Eine weitere Änderung, die mit dem Speicher zu tun hat ist Zswap. Wenn dieser komprimierte Swap-cache aktiviert ist, wird er beabsichtigen den Speicher zu komprimieren statt auf die Festplatte zu schreiben. Das reduziert die Datenübertragung zu langsamen Platten. Das beschleunigt Systeme mit kleinem Speicher.


    Für schwergewichtige Systeme wie Milti-CPU-Server werden die verbesserte NUMA- Überarbeitung, Multitasking, rwlock, mutex und SYSV IPC Benachrichtigungen einen großen Unterschied in der Skalierbarkeit von speziellen Arbeitspaketen machen."


    "Änderungen in den Dateisystemen
    Btrfs führt eine Format-Verbesserung ein, das macht den Baum Zweck bestimmend, um erweiterte Informationen 30-35% kleiner zu speichern. Es gibt auch eine neue Btrfs-Funktion, die es erlaubt, eine Festplatte in einer Btrfs-basierten RAID 5/6 Reihe schnell zu ersetzen. Dieses Release bringt ebenso eine bessere Defragmentierung in Dateien die von Schnappschüssen gemeinsam benutzt werden."


    "Ext4 führt die Einbettung sehr kleiner Dateien in die Inode ein. Das macht diese kleinen Dateien zu einem essenziellen Teil der Tabelle, die ext4 verwendet, um Dateien auf der Festplatte zu suchen.


    Das XFS, die von SUSE empfohlene Wahl für große Dateidatenspeicher, erhält Unterstützung für Metadaten und Journal-Prüfsummen sowie für selbst beschreibende Metadaten-Prüfsummen. Es bringt größere Zuverlässigkeit und Fehlerentdeckung zu diesem Dateisystem.


    Neu ist das Dateisystem F2FS, das für SSDs optimiert und von Samsung zu Linux beigetragen wurde. Diese Dateisystem ist nicht so häufig getestet wie andere, aber es ist vielversprechend für SSD-Besitzer, die nach Leistunf ausschau halten.


    Dieses Release führt auch bcache ein, das die Verwendung eines schnellen Gerätes wie eine SSD als Cach für andere Blockgeräte wie traditionelle "spinning-rust" Treiber erlaubt."


    "Schließlich wird für die große-Eisen Hardware die experimentelle Unterstützung für das verteilte Dateisystem Lustre sicherlich geschätzt."


    Dies und viel mehr zu finden hier: https://de.opensuse.org/Funktionen


    Sind diese Angaben konkret genug?

    Für den Inhalt des Beitrages 70203 haftet ausdrücklich der jeweilige Autor: thomasKR

  • Hallo nochmal,


    mein letzter post ist wohl eher als beispielhaft hinsichtlich der Thematik die ich in diesem thread gerne diskutieren möchte zu verstehen, aber zugegebenermaßen nicht wirklich verwertbar für interessante Diskussionen zum Thema.
    (Gleicht wohl mehr einem Hinklatschen von Info statt einem überlegten, einigermaßen sortiertem post :S )


    Ich habe mich nun bemüht einen konstruktiven Beitrag zu formulieren :P .
    Hierzu habe ich etwas weiter bzgl. meiner anfänglichen Behauptung OpenSuse habe eine ungewöhnliche Verzeichnisstruktur recherchiert und bin auf meines Erachtens interessante Informationen die auch gut zum Thema passen gestoßen:


    usr/ merge


    Für viele von Euch wird das wohl ein mittlerweile alter Hut sein, da OpenSuse bereits mit Version 12.2 mit dem Projekt usr/ merge begonnen hat!
    Ich denke es ist nichtsdestotrotz ein interessanter Aspekt hinsichtlich der Unterschiede verschiedener Linux-Distributionen "Unter der Haube" am Beispiel der Verzeichnisstruktur.
    Der Plan hinter "Usr-Merge": Alle binären Dateien in /bin, /sbin /lib und /lib64 nach /usr verschieben.
    "Die von den Red-Hat-Entwicklern für Fedora ersonnene, salopp als Usr-Merge bezeichnete Umstrukturierung macht es einfacher, /usr komplett in ein eigenes Dateisystem auszulagern oder schreibgeschützt über das Netz einzubinden, sodass es sich von mehreren Systemen gleichzeitig nutzen lässt.
    Die OpenSuse-Entwickler haben allerdings laut eigenen Angaben gerade erst damit begonnen, die System-Verzeichnisse /bin, /sbin und /lib in gleichnamige Unterverzeichnisse unterhalb von /usr zu verlagern. Der Merge-Prozess soll mit OpenSuse 12.3 fortgesetzt werden, vorrangig mit um dem künftigen Standard kompatibel zu bleiben. Allerdings ist /usr-Merge nicht FHS-konform."
    (Quelle: #mce_temp_url# )


    Die Arbeit an dieser Verzeichnisumstrukturierung wurde also mit Version 12.2 von OpenSuse aufgenommen und sollte mit 12.3 fortgesetzt werden. Leider konnte ich keine neueren Infos bzgl. der Versionen 12.3 und 13.1 zu usr/merge mehr im Internet finden.


    "Warum macht man das? Die Verzeichnisse /bin, /sbin, /lib und /lib64 waren damals wichtig, wo noch Festplattenspeicher sehr knapp waren. Die Tools und die Bibliotheken standen auf dem System immer zur Verfügung, während man das Verzeichnis /usr aus Platzgründen auf einer anderen Festplatte ausgelagert hatte. Falls das System die Festplatte/Partition für /usr nicht mounten konnte, so hat man noch ein funktionsfähiges System. Außerdem hat man immer noch die Werkzeuge zur Verfügung, um das System zu reparieren."
    "Die andere Seite der Medaille ist, dass es evtl. zu einem Bruch bei der FHS (Filesystem Hierarchy Standard) und bei der LSB (Linux Standard Base) kommt, die den Standard der Dateisystemordnung sowie den Ort für die binären Dateien vorschreibt. Hier müsste die Linux Foundation die FHS/LSB-Spezifikation abändern, sonst ist die Zertifizierung in Gefahr, was für die kommerziellen Linux-Systeme wie z.B. die “SUSE Linux Enterprise” Produkte und auch “Red Hat Enterprise Linux” Produkte hart treffen könnte."
    (Quelle: #mce_temp_url# ) --> Sehr informative Seite zu Thema mit zahlreichen links!


    Ich habe mir interessehalber mal meine Verzeichnisstruktur angesehen und festgestellt das unter OpenSuse 13.1 dieser Vorgang bereits vollzogen wurde (ob abgeschlossen oder nicht entzieht sich meiner Kenntnis!)


    Neben Fedora und openSuse hat auch Mageia mit Version 3 mit der Umsetzung dieses Vorhabens begonnen.
    "Die Entwickler der Linux-Distribution Mageia, die sich vor gut zwei Jahren von Mandriva lossagten, haben die erste Alpha-Version des für März nächsten Jahres geplanten Mageia 3 veröffentlicht. Mit ihr ziehen bislang in Verzeichnissen wie /bin/, /sbin/ oder /lib/ liegende Dateien in die gleichnamigen Verzeichnisse unterhalb von /usr/ um; laut einer Status-Seite ist diese Umstrukturierung schon zu 99 Prozent abgeschlossen. Die Mageia-Entwickler folgen mit der Anpassung dem Beispiel des Fedora-Projekts, das bei Fedora 17 solch einen Umbau vorgenommen hatte; auch das OpenSuse-Projekt arbeitet an so einer Verlagerung, die beim kürzlich freigegeben OpenSuse 12.2 schon begonnen hat und bei Version 12.3 abgeschlossen werden soll."
    (Quelle: #mce_temp_url# )


    Fedora, OpenSuse und Mageia haben also mit dem usr/ merge-Projekt eine Verzeichnisstrukturänderung eingeführt, die sich auf zukünftige Systemerweiterungen wie z.B. Snapshots etc. positiv auswirkt und mit dem FHS in Konflikt gerät!
    Inwieweit auch andere Distributionen auf diesen Zug aufgesprungen sind und wie der aktuelle Stand des Projektes ist kann ich leider nicht mitteilen. Vielleicht weiss jemand mehr hierüber? Würde mich jedenfalls sehr interessieren!


    Weitere Verzeichnis-Abweichungen von OpenSuse, Arch und Debian:


    "Nürnberger Extrawürste: /opt und /srv
    Große, optionale Software-Pakete landen bei SuSE Linux in eigenen Ordnern unter /opt. Nach einer Standardinstallation finden Sie dort die Verzeichnisse kde3, gnome, gnome2 und OpenOffice.org. Auch der SuSE-eigene Mozilla schlägt dort sein Lager auf. Kaum eine Distribution außer den Nürnbergern nutzt das /opt-Verzeichnis, obwohl es genau für diesen Zweck geschaffen wurde. Besonders sinnvoll ist es bei Anwendungen wie Open Office, die sich nicht an die unter Linux übliche Verzeichnisstruktur halten. Im OpenOffice-Ordner treffen Sie nicht auf bekannte Verzeichnisse, sondern es sieht aus wie im Verzeichnis einer Windows-Anwendung unterhalb von Programme. Die Desktop-Umgebungen KDE und GNOME halten sich dagegen an die Linux-Verzeichnisregeln. Schauen Sie in deren Ordner in opt, treffen Sie auf Unterverzeichnisse, die unter gleichem Namen auch in /usr liegen. Ob man diese Anwendungen nach /opt oder wie Red Hat Linux unterhalb von /usr installiert, ist Geschmackssache. In diesen Verzeichnissen gelten die selben Regeln, wie in /usr: SuSE-Linux-Anwender finden Ihre KDE-Hintergrundbilder etwa im Ordner /opt/kde3/share/wallpaper.
    Seit der Version 8.1 legt SuSE Linux bei der Installation das Verzeichnis /srv mit Beispielumgebungen für einen Web- und FTP-Server an. Im Verzeichnis httpd treffen Sie nach einer Standardinstallation auf einige Dateien des htdig-Pakets. Das ist eine auch für den lokalen Einsatz geeignete Suchmaschine, die die Suchfunktion in der SuSE-Hilfe (das Symbol mit dem Rettungsring in der KDE-Kontrolleiste) bereitstellt."
    (Quelle: #mce_temp_url# )


    Zugegebenermaßen eine Uralt-Info aus dem Jahre 2003, aber auch aktuell noch in Wikipedia zu finden:
    "/srv – Daten, die von Diensten angeboten werden
    In diesem Verzeichnis sollen die Daten zu angebotenen Diensten abgelegt werden. Momentan gibt es noch keine Vorschriften darüber, wie die Verzeichnisstruktur in /srv auszusehen hat. Eine vorgeschlagene Möglichkeit ist die Benennung der Unterverzeichnisse nach dem Dienst, also z. B. www, ftp, mysql usw. Eine andere Möglichkeit ist die Ordnung nach Verwaltungseinheiten wie beispielsweise Fachschaften an Universitäten. Dieses wird momentan nur von SuSE und Arch Linux so gemacht. So existiert beispielsweise unter Debian das Verzeichnis /var/www, hingegen wird bei SuSE /srv/www (Arch: /srv/http) verwendet"
    (Quelle: #mce_temp_url# )


    Diese Besonderheit hat wohl wie ich vermute keine sonderlichen Auswirkungen auf das System. Ich denke es könnte den ein oder anderen aber interessieren inwieweit Distributionen sich punkto Verzeichisstruktur voneinander unterscheiden.

    Für den Inhalt des Beitrages 70204 haftet ausdrücklich der jeweilige Autor: thomasKR

  • Das Paketmanagement hast Du ja schon angesprochen. Hier gibt es z.B. dkpg (Debian) und rpm (Red Hat, Fedora etc.) und darauf setzen Metapaketmanager auf, die von Distribution zu Distribution unterschiedlich sein können: Red Hat Enterprise Linux verwendet "yum" um die Abhängigkeiten von Paketen aufzulösen, bei Debian, Ubuntu, Mint etc. ist das "apt-get". Wenn Du mal vorhast, ein Linuxzertifikat zu machen, musst Du mit beiden umgehen können.


    Vor einiger Zeit gab es eine Diskussion um das Starten von Diensten: systemd vs. upstart vs. dem traditionellen init-Skripten. Upstart kommt von Canonical, systemd von Red Hat und so wie ich das verstanden habe, hat "systemd" wohl das Rennen gemacht. Bei openSUSE hat man sich wohl in der 12er-Serie sehr stark mit systemd beschäftigt. Zumindest habe ich das so verstanden.

    Für den Inhalt des Beitrages 71096 haftet ausdrücklich der jeweilige Autor: tapwag

  • Hallo tapwag,


    das Paketmanagement ist natürlich ein Punkt wo sich die einzelnen Distributionen deutlich unterscheiden und passt gut ins Thema "Unterschiede unter der Haube"!
    Mit fielen da noch "zypper" von Suse, "urpmi" von Mageia, Mandriva, Rosa und "portage" von Gentoo als weitere verwendete Paketverwaltungswerkzeuge ein. Nicht zu vergessen der Sonderweg von PCLinuxOS: PCLinuxOS verwendet apt-get von Debian & Co zusammen mit der rpm-Paketgruppe von RedHat, Suse & Co!


    Der init-Prozess ist ebenfalls ein wichtiger und auch aktueller Punkt zur Thematik!
    Mit "upstart" als init-Prozess hat Ubuntu genau wie mit "unity" als Benutzeroberfläche und "mir" als Display-Server einen Sonderweg eingeschlagen. Die meisten der großen Distributionen wie z.B. Suse, Fedora, Arch, Mageia, Mandriva setzen mittlerweile auf "systemd" als neuen default-init-Prozess. Heiß diskutiert wurde diesbezüglich die Weiterentwicklung bei Debian. Es wurden systemd und upstart als zukünftige Lösung diskutiert und wie Du schon richtig sagtest hat systemd (sehr zum Ärger von Ubuntu-Guru Mark Shuttleworth) hier das Rennen gemacht. Debian wird ab Version 8 Jessie auf systemd setzen und auch Ubuntu als Debian-Abkömmling will daher nun langfristig auf systemd umsteigen.
    Aktuell fallen mir z.B. Gentoo und PCLinuxOS als Distributionen ein die noch das herkömmliche "SysVinit" als init-Prozess per default nutzen. Zumindest bei Gentoo wird der Umstieg auf systemd optional angeboten.
    Langfristig werden wohl nahezu alle gängigen Linux-Distributionen auf systemd setzen. Es wird ja u.a. auch gesprochen von einer Vereinheitlichung des Linux-Universums durch die Einführung von Systemd.

  • Bei OpenMandriva und Mageia ist mir noch ein kleiner Unterschied eingefallen: OpenMandriva verwendet rpm5 während die meisten anderen Distributionen rpm Version 4 verwenden: http://rpm5.org/

    Für den Inhalt des Beitrages 71177 haftet ausdrücklich der jeweilige Autor: tapwag

  • Stimmt, auch auf die unterschiedlichen Versionen der jeweils eingesetzten Paketverwaltung kann/sollte man einen Blick werfen. Je nachdem was für Änderungen eingeführt wurden kann sowas schon einen großen Unterschied ausmachen.


    Mir ist beim Testen von PCLinuxOS aufgefallen das Distributionen sich auch hinsichtlich des eingesetzten Prozess-Schedulers voneinander unterscheiden:


    PClinuxOS nutzt den Budget Fair Queueing (BFQ) - Scheduler per default, was laut Ansicht mancher Nutzer Performance-Verbesserungen bei Desktop-Computern einbringen soll.
    Der BFQ-Scheduler wird auch von Manjaro, Sabayon, OpenMandriva und ROSA als default-scheduler eingesetzt. Gentoo und Arch Linux bieten BFQ zumindest optional an.

    Der eigentliche im Vanilla-Linux-Kernel bevorzugte Prozess-Scheduler ist der Completely Fair Queueing (CFQ) - Scheduler, der auch in OpenSuse13.1 per default eingestellt ist.


    Welchen Prozess-Scheduler man im eigenen System aktiviert hat zeigt der terminal Befehl

    Code
    cat /sys/block/sda/queue/scheduler


    Links:
    Budget Fair Queueing (BFQ) Storage-I/O Scheduler
    Scheduler


    Edit (Nachtrag) weiterer interessanter und aktueller link zum bfq (leider in englisch):
    The BFQ I/O scheduler

    Einmal editiert, zuletzt von linux-freund () aus folgendem Grund: Weiterer interessanter link zum bfq

    Für den Inhalt des Beitrages 71181 haftet ausdrücklich der jeweilige Autor: linux-freund