Discovod - stock.adobe.com
XFS oder ext4: Welches Linux-Dateisystem maximiert Storage?
Storage benötigt ein Dateisystem zur strukturierten Datenverwaltung. Wählen Sie zwischen den Dateisystemen XFS und ext4, entsprechend der Leistungsanforderungen Ihres Linux-Servers.
Linux-Serveradministratoren müssen sorgfältig überlegen, welches Dateisystem sie wählen sollen – XFS oder ext4 –, je nach der Rolle und den Speicheranforderungen jedes Systems. Mitarbeiter im Bereich Desktop-Bereitstellung und Support stellen möglicherweise fest, dass ein anderes Dateisystem besser zu ihren Systemen passt als eines, das für Hochleistungsserver entwickelt wurde.
Vergleichen Sie unter Berücksichtigung der Auswirkungen auf den Speicher die Dateisysteme XFS und ext4 auf Linux-Geräten hinsichtlich Flexibilität, Data Protection, Leistung, Kapazität und Sicherheit.
Distributionsunterstützung
Die meisten Linux-Distributionen haben ein bevorzugtes oder standardmäßiges Dateisystem, das Sie jedoch bei Bedarf ändern können. Debian-basierte Distributionen verwenden in der Regel ext4, während Red Hat Enterprise Linux (RHEL), AlmaLinux, Oracle Linux und Rocky Linux XFS verwenden. Zusätzlich bieten ZFS und btrfs ext4, wobei letzteres mit Snapshots, Prüfsummen und RAID-Funktionalität oft als neuere Alternative angesehen wird.
Zeigen Sie die von den Speichergeräten Ihres Systems verwendeten Dateisysteme an, indem Sie einen der folgenden Befehle ausführen:
- df -T.
- lsblk -f.
- blkid /dev/sda1 – ersetzen Sie den Pfad durch den Ihres Geräts.
Der Befehl df -T zeigt Informationen zum Speichergerät an, einschließlich des Dateisystems. Beachten Sie, dass /dev/sda1 in Abbildung 1 XFS verwendet.
Der Befehl lsblk -f bietet einen strukturierteren Überblick über die Speichersysteme, Partitionen und Dateisysteme. Beachten Sie, dass /dev/sda1 und /dev/sda2 in Abbildung 2 XFS verwenden, während /dev/sdb1 und /dev/sdc1 beide auf ext4 basieren.
Durch die Angabe eines bestimmten Volumes oder einer bestimmten Partition erhalten Sie eine gezieltere Perspektive. Abbildung 3 zeigt die Ergebnisse von blkid /dev/sda1, einschließlich des Dateisystemtyps.
Verwenden Sie diese gängigen Linux-Speicheranalyse-Tools, um die auf Ihren Servern verwendeten Dateisysteme zu ermitteln.
Vergleichen Sie Leistung und Kapazität
Leistung und Kapazität hängen miteinander zusammen, daher werden sie hier gemeinsam bewertet.
Das ext4-Dateisystem ist für den allgemeinen Gebrauch konzipiert und daher die natürliche Wahl für Entwickler-Workstations, Benutzercomputer und Heimsysteme. Leistung und Kapazität sind für diese Benutzer zwar sicherlich wichtig, aber sie erzeugen in der Regel keine riesigen Dateien oder Workloads, für deren Verwaltung XFS optimiert ist.
Diese Arten von Workstations verfügen in der Regel auch nicht über die enorme Speicherkapazität oder parallelen I/O-Operationen, für deren Verwaltung XFS besonders geeignet ist. Bei Geräten für den täglichen Gebrauch bietet ext4 in der Regel eine bessere Leistung.
Das ext4-Dateisystem weist folgende Eigenschaften auf:
- Maximale Dateigröße von 16 Tebibyte (TiB), RHEL 8 gibt jedoch eine Unterstützung von 16 TB an. 16 Tebibyte sind theoretisch möglich, in der Praxis sind die Dateien je nach Blockgröße jedoch kleiner.
- Maximale Volume-Größe liegt theoretisch bei 1 EiB, RHEL 8 gibt jedoch eine praktische Unterstützung von 50 TB an.
- Feste Inode-Zuweisung.
Zu den Eigenschaften des XFS-Dateisystems gehören:
- Maximale Volumengröße ist bis 8 EiB (Exbibyte) theoretisch möglich, in der Praxis (zum Beispiel mit RHEL 9) oft auf 500 TiB – 1 PiB begrenzt.
- Maximale Dateigröße bis zu 1 EiB.
- Unterstützung für parallele Operationen.
- Dynamische Inode-Zuweisung.
Aus praktischer Sicht stoßen nur wenige Administratoren an die Größenbeschränkungen eines der beiden Dateisysteme.
XFS ist außerdem ressourcenintensiver als ext4, was für stark ausgelastete Server ein wichtiger Aspekt ist. Diese stark ausgelasteten Server können dennoch von der größeren Fähigkeit von XFS profitieren, höhere Arbeitslasten zu bewältigen.
Sich ändernde Anforderungen verwalten
Die Speicheranforderungen ändern sich im Laufe der Zeit, wenn Sie die Rolle des Servers an die sich wandelnden Geschäftsanforderungen anpassen. XFS kann mit diesen Anforderungen wachsen. XFS unterstützt Online-Resizing, also ein Vergrößern im laufenden Betrieb. Eine Verkleinerung ist nicht möglich.
Während die meisten Speicherszenarien eine Erweiterung der Kapazität enthalten, schränkt die Tatsache, dass Sie ein XFS-Dateisystem nicht einfach verkleinern können, dessen Flexibilität ein. Das ext4-Dateisystem erlaubt sowohl eine Vergrößerung als auch eine Verkleinerung, wobei die Vergrößerung online und die Verkleinerung offline, im ungemounteten Zustand, geschieht. Diese Flexibilität ist in Umgebungen, in denen eine Anpassung der Speicherkonfigurationen zu erwarten ist, von entscheidender Bedeutung.
Die Unterstützung für XFS wurde 2001 in den Linux-Kernel aufgenommen, sodass es selten ist, Distributionen zu finden, die nicht zumindest eine grundlegende Unterstützung bieten. Viele verwenden es nicht als Standard, erlauben aber später benutzerdefinierte Installationen oder Konfigurationen. Benutzer können davon ausgehen, dass ext4 auch von aktuellen Distributionen unterstützt wird. Support-Probleme treten hauptsächlich bei alten Distributionen auf.
Verwalten und Wiederherstellen Ihres Dateisystems
XFS enthält eine Reihe von Verwaltungs-Tools, mit denen Administratoren das Dateisystem sichern, wiederherstellen, in der Größe anpassen, reparieren und sogar Quoten festlegen können. Diese Integration von Tools und ihre Benutzerfreundlichkeit sind für viele Systemadministratoren attraktiv.
Das XFS-Toolset umfasst Folgendes:
- xfs_growfs. Vergrößern Sie das Dateisystem.
- xfs_admin. Verwalten Sie Parameter wie Label oder universell eindeutige Kennungen.
- xfs_copy. Kopieren Sie das Dateisystem an einen anderen Zielort.
- xfs_quota. Verwalten Sie Dateisystemkontingente.
Ext4 unterstützt zwar viele dieser Funktionen, aber Administratoren implementieren sie mit externen Tools, die möglicherweise nicht konsistent oder miteinander verbunden sind.
Verwenden Sie die folgenden Tools, um ext4-Dateisysteme zu verwalten:
- e2fsck. Überprüfen und reparieren Sie das Dateisystem.
- tune2fs. Verwalten Sie Parameter.
- resize2fs. Vergrößern oder verkleinern Sie das Dateisystem.
- e2label. Ändern Sie die Dateisystembezeichnung.
- quota. Verwalten Sie Dateisystemkontingente.
Viele ext4-Tools unterstützen auch die älteren Dateisysteme ext2 und ext3, die manchmal auf älteren Systemen zu finden sind.
Heutige Dateisysteme unterstützen Journaling, was ihre Zuverlässigkeit und Wiederherstellungszeit bei einem plötzlichen Stromausfall oder Systemabsturz verbessert. Datenänderungen werden vor dem Dateisystem in das Journal geschrieben, wodurch eine Aufzeichnung der letzten Änderungen bereitgestellt wird.
Das Dateisystem durchsucht das Journal nach aktuellen Ereignissen, um sich von einem Absturz zu erholen, anstatt die gesamte Festplatte zu überprüfen. Sowohl ext4 als auch XFS implementieren Journaling, ebenso wie andere gängige Dateisysteme, zum Beispiel Windows NTFS. ext4 bietet Checksumming im Journal (ab Kernel 5.4+) für verbesserte Datenintegrität, während XFS Metadata Checksumming offeriert, aber keine Daten-Prüfsummen wie btrfs.
Ändern von Dateisystemen
Keines der beiden Dateisysteme bietet eine Konvertierungsmethode, aber es gibt Tools von Drittanbietern, die Ihnen bei der Migration von einem Dateisystem zum anderen helfen können.
Der Standardansatz für den Wechsel zwischen XFS und ext4 ist die Neuerstellung des Dateisystems. Das bedeutet, dass Sie die vorhandenen Daten auf dem aktuellen Dateisystem sichern, ein neues auf der Storage Disk erstellen und die Daten wiederherstellen müssen.
Die Schritte sehen wie folgt aus:
- Sichern Sie die vorhandenen Daten und überprüfen Sie deren Integrität.
- Hängen Sie das Volume mit dem Befehl umount aus.
- Formatieren Sie das Volume mit dem neuen Dateisystem ext4 oder XFS.
- Stellen Sie die Daten aus der Sicherung wieder her und testen Sie das System.
Dieser Vorgang kann je nach Größe des Volumes lange dauern. Denken Sie daran, dass einer der Vorteile von XFS die Unterstützung großer Dateisysteme ist und dass selbst ext4 Datenmengen unterstützt, deren Sicherung oder Wiederherstellung viel Zeit in Anspruch nimmt. Auch die Geschwindigkeit Ihrer Speicherinfrastruktur spielt hier eine Rolle.
Überprüfen Sie unbedingt den Sicherungsauftrag, bevor Sie das neue Dateisystem installieren. Sie können die Befehle mkfs.xfs oder mkfs.ext4 verwenden, um das neue Dateisystem zu installieren.
Weitere Unterschiede zwischen XFS und ext4
Es ist bezeichnend, dass die Serverplattform von Red Hat standardmäßig XFS verwendet, während beliebte Endbenutzer-Distributionen wie Ubuntu zur Speicherverwaltung auf ext4 setzen. XFS eignet sich besonders für Umgebungen mit höheren Anforderungen und höherer I/O-Auslastung, in denen Server häufig zum Einsatz kommen. Bei Single-Thread-Workstations für allgemeine Zwecke kann ext4 gegenüber XFS eine Leistungssteigerung bewirken.
Die Auswahl eines Dateisystems für Ihre nächste Bereitstellung beginnt mit dem Verständnis der Rolle des Geräts und der zu erwartenden Arbeitslast. Berücksichtigen Sie auch die verwendete Hardware. Stellen Sie sicher, dass die Speichergeräte keine Engpässe bei I/O-Vorgängen verursachen, bevor das Dateisystem überhaupt zum Einsatz kommt. Überlegen Sie, wie flexibel der Speicher sein muss, da ext4 in der Größe angepasst werden kann, während XFS nur vergrößert werden kann.
Die Entscheidung für die Implementierung von XFS basiert in der Regel auf einem bestimmten Bedarf, zum Beispiel Hochleistungsrechnen. Die nativen Support-Tools von XFS sind jedoch leistungsstark und für Administratoren sehr praktisch.
Sehen Sie sich Ihre aktuellen Server an und entscheiden Sie, ob die zusätzlichen Funktionen und die Leistung von XFS-Dateisystemen dazu beitragen, deren Geschwindigkeit und Flexibilität aufrechtzuerhalten.
Das Wichtigste auf einen Blick: XFS und ext4 vergleichen
Die Wahl zwischen XFS und ext4 hängt stark von der vorgesehenen Nutzung und den Leistungsanforderungen ab.
ext4 überzeugt durch Flexibilität, Stabilität und einfache Verwaltung – ideal für Workstations, Desktops und Systeme mit wechselnden Speicheranforderungen.
XFS bietet Vorteile bei großen Datenmengen, parallelen Workloads und serverbasierten Hochleistungsumgebungen, ist jedoch weniger flexibel, da es nicht verkleinert werden kann.
Beide Dateisysteme sind ausgereift, unterstützen Journaling und werden von allen gängigen Linux-Distributionen zuverlässig unterstützt.
Für spezielle Anforderungen wie Snapshots oder integrierte Prüfsummen können moderne Alternativen wie btrfs oder ZFS eine Überlegung wert sein.