GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So erstellen Sie ein XFS-Dateisystem

Das XFS-Dateisystem ist ein Hochleistungs-Journaling-Dateisystem. XFS ist das Standarddateisystem für RedHat Linux 7. XFS unterstützt eine maximale Dateisystemgröße von 500 TB und eine maximale Dateigröße von 16 TB. Sie können ein XFS-Dateisystem auf einer normalen Festplattenpartition und auf einem logischen Volume erstellen.

Der Datenabschnitt eines XFS-Dateisystems enthält die Metadaten des Dateisystems (Inodes, Verzeichnisse und indirekte Blöcke) und die Benutzerdateidaten. Der Datenabschnitt wird in Zuordnungsgruppen partitioniert, die virtuelle Speicherbereiche fester Größe sind. Alle Dateien und Verzeichnisse, die Sie erstellen, können mehrere Zuordnungsgruppen umfassen. Jede Zuordnungsgruppe verwaltet ihren eigenen Satz von Inodes und freien Speicherplatz unabhängig von anderen Zuordnungsgruppen, um sowohl Skalierbarkeit als auch Parallelität von E/A-Vorgängen bereitzustellen.

Das XFS-Journal (oder Protokoll) kann sich intern im Datenabschnitt des Dateisystems oder extern auf einem separaten Gerät befinden, um die Anzahl der Festplattensuchen zu reduzieren. Das Journal speichert Änderungen an den Metadaten des Dateisystems, während das Dateisystem ausgeführt wird, bis diese Änderungen in den Datenabschnitt geschrieben werden. XFS-Journaling garantiert die Konsistenz des Dateisystems nach einem Stromausfall oder einem Systemabsturz. Beim Mounten eines Dateisystems nach einem Absturz wird das Journal gelesen, um Vorgänge abzuschließen, die zum Zeitpunkt des Absturzes im Gange waren.

Beispiele zum Erstellen eines XFS-Dateisystems

1. XFS-Dateisystem mit internem Log auf demselben Gerät erstellen

Verwenden Sie den Befehl mkfs.xfs oder mkfs –t xfs, um ein XFS-Dateisystem zu erstellen. Das folgende Beispiel erstellt ein XFS-Dateisystem mit einem internen Protokoll auf der Festplatte /dev/sdc. Wie in der Folie gezeigt, werden Parameter für das Dateisystem als Ausgabe angezeigt.

# mkfs.xfs /dev/sdc
meta-data=/dev/sdc               isize=512    agcount=4, agsize=1310720 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=5242880, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

2. XFS-Dateisystem mit Journal auf einem anderen Gerät erstellen

Das nächste Beispiel erstellt ein XFS-Dateisystem auf /dev/sdb, platziert das Journal jedoch auf einem anderen Gerät, /dev/sdc. Die Größenoption gibt ein 10000-Block-Journal an:

# mkfs.xfs -l logdev=/dev/sdc,size=10000b /dev/sdb
meta-data=/dev/sdb               isize=512    agcount=4, agsize=1310720 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=5242880, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =/dev/sdc               bsize=4096   blocks=10000, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

3. XFS-Dateisystem auf logischem Volume erstellen

Das nächste Beispiel erstellt ein XFS-Dateisystem mit einer Stripe-Einheitengröße von 32 KB und 6 Einheiten pro Stripe auf einem logischen Volume:

# mkfs.xfs -d su=32k,sw=6 /dev/mapper/vg_test-test_lv 
meta-data=/dev/mapper/vg_test-test_lv isize=512    agcount=8, agsize=9592 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=76736, imaxpct=25
         =                       sunit=8      swidth=48 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=624, version=2
         =                       sectsz=512   sunit=8 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

XFS verwendet die Stripe-Einheitsgröße und die Anzahl der Einheiten pro Stripe, um Daten, Inodes und das Journal entsprechend für den Speicher auszurichten. Auf LVM- und Multiple Devices (MD)-Volumes und einigen Hardware-RAID-Konfigurationen kann XFS automatisch die optimalen Stripe-Parameter auswählen.

4. Überschreiben eines bestehenden Dateisystems mit dem XFS-Dateisystem

Das nächste Beispiel enthält die Ausgabe des Befehls mkfs.xfs. Das -f Option erzwingt das Überschreiben eines vorhandenen Dateisystemtyps. Das –L Option setzt die Dateisystembezeichnung auf „XFS “. Die -b size=1024 Option setzt die logische Blockgröße auf 1024 Byte.

# mkfs.xfs -f -L XFS -b size=1024 /dev/sdb
meta-data=/dev/sdb               isize=512    agcount=4, agsize=5242880 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=1024   blocks=20971520, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=1024   blocks=10240, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

Die Ausgabe des Befehls mkfs.xfs verstehen

Die Ausgabe zeigt, dass ein XFS-Dateisystem aus bis zu drei Teilen besteht:

  • ein Datenabschnitt
  • ein Protokollabschnitt (Journal)
  • ein Echtzeitabschnitt

Wenn Sie die Standardoptionen von mkfs.xfs verwenden, fehlt der Echtzeitabschnitt, und der Protokollbereich ist im Datenabschnitt enthalten. Der Benennungsbereich legt die Einstellungen für das Dateisystemverzeichnis fest.

Im Folgenden finden Sie einige zusätzliche Optionen für den Befehl mkfs.xfs:

  • -b [Blockgröße] :Jeder Abschnitt des Dateisystems ist in eine bestimmte Anzahl von Blöcken unterteilt. Mit XFS können Sie die logische Blockgröße für jeden Abschnitt des Dateisystems auswählen. Die physischen Plattenblöcke sind immer 512 Bytes groß. Der Standardwert der logischen Blockgröße beträgt 4 KB. Dies ist die empfohlene Blockgröße für Dateisysteme größer als 100 MB. Der minimale logische Block beträgt 512 Bytes und wird für Dateisysteme kleiner als 100 MB und für Dateisysteme mit vielen kleinen Dateien empfohlen. Die maximale Blockgröße ist die Seitengröße des Kernels.
  • -d [Datenabschnittsoptionen] :Diese Optionen geben den Speicherort, die Größe und andere Parameter des Datenabschnitts des Dateisystems an. Der Datenabschnitt des Dateisystems ist in Zuordnungsgruppen unterteilt, um die Leistung von XFS zu verbessern. Mehr Zuordnungsgruppen bedeuten, dass Sie beim Zuordnen von Blöcken und Inodes mehr Parallelität erreichen können. Verwenden Sie die Option – d agcount=[Wert], um die Anzahl der Zuordnungsgruppen auszuwählen. Die Standardanzahl der Zuordnungsgruppen ist 8, wenn das Dateisystem zwischen 128 MB und 8 GB groß ist. Alternativ können Sie die Option –d agsize=[Wert] verwenden, um die Größe der Zuordnungsgruppen auszuwählen. Die Parameter agcount und agsize schließen sich gegenseitig aus. Die Mindestgröße der Zuordnungsgruppe beträgt 16 MB; die maximale Größe liegt bei knapp 1 TB. Erhöhen Sie die Anzahl der Zuordnungsgruppen gegenüber dem Standardwert, wenn ausreichend Arbeitsspeicher und viele Zuordnungsaktivitäten vorhanden sind. Stellen Sie die Anzahl der Zuordnungsgruppen nicht zu hoch ein, da dies dazu führen kann, dass das Dateisystem viel CPU-Zeit verbraucht, insbesondere wenn das Dateisystem fast voll ist.
  • -n [Namensoptionen] :Diese Optionen geben die Versions- und Größenparameter für das Dateisystemverzeichnis (oder den Benennungsbereich) an. Dadurch können Sie eine logische Blockgröße für das Dateisystemverzeichnis wählen, die größer ist als die logische Blockgröße des Dateisystems. Beispielsweise könnte in einem Dateisystem mit vielen kleinen Dateien die logische Blockgröße des Dateisystems klein (512 Byte) und die logische Blockgröße für das Dateisystemverzeichnis groß sein (4 KB). Dies kann die Leistung von Verzeichnissuchen verbessern, da der Baum, in dem die Indexinformationen gespeichert sind, größere Blöcke hat.


Cent OS
  1. So erstellen Sie eine Datei im Plesk-Dateimanager

  2. So erstellen Sie einen Swap unter Linux

  3. Wie erstelle ich eine temporäre Datei im Shell-Skript?

  4. Wie erstelle ich eine Datei und mounte sie als Dateisystem?

  5. So erstellen Sie eine PHPInfo-Seite

So erstellen Sie eine ISO-Datei in Ubuntu 18.04 LTS

So erstellen Sie Desktop-Verknüpfungen unter Ubuntu

So erstellen Sie eine Website-Datei

So erstellen Sie eine PHP-Infoseite

So erstellen Sie eine Tar gz-Datei

Wie überprüfe ich die Version des XFS-Dateisystems?