GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come creare un filesystem XFS

Il filesystem XFS è un filesystem di journaling ad alte prestazioni. XFS è il file system predefinito per RedHat Linux 7. XFS supporta una dimensione massima del file system di 500 TB e una dimensione massima del file di 16 TB. Puoi creare un file system XFS su una normale partizione del disco e su un volume logico.

La sezione dati di un file system XFS contiene i metadati del file system (inode, directory e blocchi indiretti) e i dati del file utente. La sezione dati è suddivisa in gruppi di allocazione, che sono aree di archiviazione virtuale di dimensioni fisse. Tutti i file e le directory creati possono estendersi su più gruppi di allocazione. Ciascun gruppo di allocazione gestisce il proprio set di inode e spazio libero indipendentemente dagli altri gruppi di allocazione per fornire scalabilità e parallelismo delle operazioni di I/O.

Il diario (o registro) XFS può essere posizionato internamente nella sezione dati del file system o esternamente su un dispositivo separato per ridurre il numero di ricerche su disco. Il giornale memorizza le modifiche ai metadati del file system mentre il file system è in esecuzione finché tali modifiche non vengono scritte nella sezione dati. Il journaling XFS garantisce la coerenza del file system in seguito a un'interruzione dell'alimentazione o a un arresto anomalo del sistema. Quando si monta un file system dopo un arresto anomalo, il journal viene letto per completare le operazioni in corso al momento dell'arresto anomalo.

Esempi di creazione di file system XFS

1. Creazione di filesystem XFS con log interno sullo stesso dispositivo

Utilizzare il comando mkfs.xfs o mkfs –t xfs per creare un file system XFS. L'esempio seguente crea un file system XFS con un log interno sul disco /dev/sdc. Come mostrato nella diapositiva, i parametri per il file system vengono visualizzati come output.

# 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. Creazione di filesystem XFS con journal su un altro dispositivo

L'esempio successivo crea un file system XFS su /dev/sdb ma posiziona il journal su un altro dispositivo, /dev/sdc. L'opzione dimensione specifica un diario di 10000 blocchi:

# 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. Creazione di un filesystem XFS su un volume logico

L'esempio successivo crea un file system XFS con una dimensione dell'unità stripe di 32 KB e 6 unità per stripe su un volume logico:

# 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 utilizza la dimensione dell'unità stripe e il numero di unità per informazioni stripe per allineare i dati, gli inode e il journal in modo appropriato per l'archiviazione. Sui volumi LVM e Multiple Devices (MD) e alcune configurazioni RAID hardware, XFS può selezionare automaticamente i parametri stripe ottimali.

4. Sovrascrivere un filesystem esistente con un filesystem XFS

L'esempio successivo include l'output del comando mkfs.xfs. Il -f opzione forza la sovrascrittura di un tipo di file system esistente. La –L opzione imposta l'etichetta del file system su "XFS “. La -b size=1024 opzione imposta la dimensione del blocco logico a 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

Comprendere l'output del comando mkfs.xfs

L'output mostra che un file system XFS ha fino a tre parti:

  • una sezione di dati
  • una sezione di registro (diario)
  • una sezione in tempo reale

Quando si utilizzano le opzioni mkfs.xfs predefinite, la sezione realtime è assente e l'area del registro è contenuta all'interno della sezione dati. L'area di denominazione specifica le impostazioni per la directory del file system.

Di seguito sono riportate alcune opzioni aggiuntive al comando mkfs.xfs:

  • -b [dimensione_blocco] :Ogni sezione del file system è divisa in un certo numero di blocchi. XFS consente di scegliere la dimensione del blocco logico per ciascuna sezione del file system. I blocchi del disco fisico sono sempre 512 byte. Il valore predefinito della dimensione del blocco logico è 4 KB. Questa è la dimensione del blocco consigliata per i file system superiori a 100 MB. Il blocco logico minimo è 512 byte ed è consigliato per file system inferiori a 100 MB e per file system con molti file di piccole dimensioni. La dimensione massima del blocco è la dimensione della pagina del kernel.
  • -d [data_section_options] :queste opzioni specificano la posizione, la dimensione e altri parametri della sezione dati del file system. La sezione dati del file system è divisa in gruppi di allocazione per migliorare le prestazioni di XFS. Più gruppi di allocazione implicano che puoi ottenere un maggiore parallelismo durante l'allocazione di blocchi e inode. Utilizzare l'opzione – d agcount=[valore] per selezionare il numero di gruppi di allocazione. Il numero predefinito di gruppi di allocazione è 8 quando la dimensione del file system è compresa tra 128 MB e 8 GB. In alternativa è possibile utilizzare l'opzione –d agsize=[valore] per selezionare la dimensione dei gruppi di allocazione. I parametri agcount e agsize si escludono a vicenda. La dimensione minima del gruppo di allocazione è 16 MB; la dimensione massima è di poco inferiore a 1 TB. Aumentare il numero di gruppi di allocazione dall'impostazione predefinita se c'è memoria sufficiente e molta attività di allocazione. Non impostare un numero di gruppi di allocazione troppo alto, poiché ciò potrebbe causare l'utilizzo da parte del file system di una grande quantità di tempo della CPU, soprattutto quando il file system è quasi pieno.
  • -n [nomi_opzioni] :queste opzioni specificano i parametri di versione e dimensione per la directory del file system (o area di denominazione). Ciò consente di scegliere una dimensione del blocco logico per la directory del file system maggiore della dimensione del blocco logico del file system. Ad esempio, in un file system con molti file di piccole dimensioni, la dimensione del blocco logico del file system potrebbe essere piccola (512 byte) e la dimensione del blocco logico per la directory del file system potrebbe essere grande (4 KB). Questo può migliorare le prestazioni delle ricerche nelle directory, perché l'albero che memorizza le informazioni sull'indice ha blocchi più grandi.


Cent OS
  1. Come creare un file in Plesk File Manager

  2. Come creare uno scambio in Linux

  3. Come creare un file di scambio in Linux

  4. Come creare filesystem ZFS con compressione file su Linux

  5. Come abilitare le quote del disco su un file system XFS

Come creare un file ISO in Ubuntu 18.04 LTS

Come creare collegamenti sul desktop su Ubuntu

Come creare un file del sito web

Come creare una pagina di informazioni PHP

Come creare un file Tar gz

Come controllare la versione del filesystem XFS?