GNU/Linux >> Linux Esercitazione >  >> Linux

Come creare e montare filesystem in Linux

Tipi di file system

La creazione di un file system scrive le informazioni sul dispositivo e crea l'ordine dello spazio vuoto. Questi dati relativi al file system consumano una piccola percentuale dello spazio. Lo spazio rimanente sull'unità disco è suddiviso in segmenti piccoli e di dimensioni costanti, chiamati blocchi. Linux supporta diversi tipi di file system, alcuni dei quali sono descritti di seguito.

Filesystem Descrizione
ext2 Alte prestazioni per dischi fissi e supporti rimovibili
ext3 Versione journal di ext2
ext4 Supporta file più grandi e dimensioni del file system
vfat File system MS-DOS utile durante la condivisione di file tra Windows e Linux
XFS File system di journaling ad alte prestazioni
Btrfs Risponde ai requisiti di scalabilità dei sistemi di storage di grandi dimensioni

Creazione di filesystem

Il comando per creare un file system Linux su un dispositivo o una partizione del disco rigido è mkfs. La sintassi del comando è:

# mkfs [options] device

Il comando mkfs è in realtà un front-end per le diverse utilità per la creazione di file system come mkfs.ext2 e mkfs.ext4. Queste utilità sono eseguibili direttamente dalla riga di comando. Quando si utilizza il wrapper mkfs, includere l'opzione -t fstype per specificare il tipo di file system da compilare. Se non specificato, viene creato il tipo di file system predefinito, ext2.

Per vedere quali tipi di file system supportati sono installati, usa il comando ls /sbin/mkfs*:

# ls -lrt /sbin/mkfs*
-rwxr-xr-x. 1 root root  28624 Jun 10  2014 /sbin/mkfs.fat
lrwxrwxrwx. 1 root root      8 Jan  7  2015 /sbin/mkfs.msdos -> mkfs.fat
lrwxrwxrwx. 1 root root      8 Jan  7  2015 /sbin/mkfs.vfat -> mkfs.fat
-rwxr-xr-x. 4 root root  96296 Aug  3  2017 /sbin/mkfs.ext4
-rwxr-xr-x. 4 root root  96296 Aug  3  2017 /sbin/mkfs.ext3
-rwxr-xr-x. 4 root root  96296 Aug  3  2017 /sbin/mkfs.ext2
-rwxr-xr-x. 1 root root 368464 Aug  4  2017 /sbin/mkfs.xfs
-rwxr-xr-x. 1 root root 375240 Aug  6  2017 /sbin/mkfs.btrfs
-rwxr-xr-x. 1 root root  37104 Dec  1 23:28 /sbin/mkfs.minix
-rwxr-xr-x. 1 root root  36984 Dec  1 23:28 /sbin/mkfs.cramfs
-rwxr-xr-x. 1 root root  11520 Dec  1 23:28 /sbin/mkfs

I file mkdosfs, mkfs.msdos e mkfs.vfat sono collegamenti simbolici a mkfs.fat.

Utilizzo di mkfs

Il tipo di file system predefinito creato quando si utilizza il comando mkfs è ext2. Come accennato in precedenza, mkfs è un wrapper che chiama altre utilità di compilazione del file system. Pertanto, uno qualsiasi dei seguenti comandi crea un file system ext2 sul dispositivo specificato:

# mkfs /dev/xvdd1
# mke2fs /dev/xvdd1
# mkfs.ext2 /dev/xvdd1

Per creare un file system ext3, utilizzare uno dei seguenti comandi:

# mkfs –t ext3 /dev/xvdd1 
# mke2fs –t ext3 /dev/xvdd1 
# mkfs.ext3 /dev/xvdd1

Per creare un file system ext4, utilizzare uno dei seguenti comandi:

# mkfs –t ext4 /dev/xvdd1 
# mke2fs –t ext4 /dev/xvdd1 
# mkfs.ext4 /dev/xvdd1

File di configurazione

Sono disponibili numerose opzioni per personalizzare la dimensione del blocco, la dimensione del frammento, i blocchi per gruppo, le opzioni del journal, il numero di inode e altri parametri. Senza includere alcuna opzione, le impostazioni predefinite specificate in /etc/mke2fs.conf vengono utilizzati i file di configurazione.

Esempio di file /etc/mke2fs.conf

Etichette del file system

Un'utile opzione per le utilità di compilazione del file system è -L opzione nome. Questo assegna un'etichetta alla partizione; questa etichetta può essere utilizzata al posto del nome del dispositivo durante il montaggio del file system. Le etichette sono limitate a una dimensione massima di 16 caratteri . Per i file system esistenti, e2label comando viene utilizzato per visualizzare o impostare un'etichetta.

Ai file system viene assegnato automaticamente un identificatore univoco universale (UUID) . Gli UUID possono essere utilizzati durante il montaggio del file system. Per visualizzare l'UUID, l'etichetta e il tipo di file system, utilizza il blkid comando. Gli esempi seguenti illustrano la creazione di diversi file system, con e senza etichetta, e la visualizzazione delle informazioni con il comando blkid. Per creare un file system ext2 e visualizzare le informazioni, immettere:

# mkfs /dev/xvdf1
# blkid /dev/xvdf1
/dev/xvdf1: UUID="41bae7c3-396a-436d-9764-d27d4ca3f17b" TYPE="ext2"

Per creare un file system ext3 e visualizzare le informazioni, inserisci:

# mkfs -t ext3 /dev/xvdf1
# blkid /dev/xvdf1
/dev/xvdf1: UUID="c8e958f4-e5d0-4404-8a9a-2cea24675fcd" SEC_TYPE="ext2" TYPE="ext3"

Per creare un file system ext4, assegnare un nome di etichetta e visualizzare le informazioni, immettere:

# mkfs -t ext4 -L "Test Label" /dev/xvdf1 
# blkid /dev/xvdf1
/dev/xvdf1: LABEL="Test Label" UUID="687eb83f-c16f-4fa9-bb49-1621eed3a35d" TYPE="ext4"

Montaggio dei file system

I file system su diverse partizioni e dispositivi rimovibili, come CD, DVD o unità flash USB, devono essere collegati alla gerarchia di directory per potervi accedere. Per collegare una partizione o un dispositivo, è necessario creare un punto di montaggio. Un punto di montaggio è semplicemente una directory creata con il comando mkdir. Dopo aver creato una directory o un punto di montaggio, collegare la partizione utilizzando il comando mount. La sintassi per il comando mount è:

# mount [options] device_file mount_point

L'esempio seguente crea un punto di montaggio (/test) e collega la partizione:

# mkdir /test
# mount /dev/xvdf1 /test

In alternativa, montare la partizione o il dispositivo facendo riferimento all'UUID o all'etichetta. L'esempio seguente mostra l'UUID e l'etichetta, usando il comando blkid, e monta la partizione facendo riferimento a ciascuno:

# blkid /dev/xvdf1
/dev/xvdf1: LABEL="Test Label" UUID="687eb83f-c16f-4fa9-bb49-1621eed3a35d" TYPE="ext4"
# mount LABEL="Test Label" /test
# mount UUID="687eb83f-c16f-4fa9-bb49-1621eed3a35d" /test

Il comando mount senza alcuna opzione mostra tutti i file system attualmente collegati:

# mount | grep test
/dev/xvdf1 on /test type ext4 (rw,relatime,seclabel,data=ordered)

In questo esempio, la partizione /dev/xvdf1 è montata su /test. Il tipo di file system è ext4 ed è montato sia in lettura che in scrittura. Il comando df visualizza anche i file system montati. Esempio:

# df -hP /test
Filesystem      Size  Used Avail Use% Mounted on
/dev/xvdf1      923M  2.4M  857M   1% /test

Le informazioni nel file system proc visualizzano i file system montati. Esempio:

# cat /proc/mounts | grep test
/dev/xvdf1 /test ext4 rw,seclabel,relatime,data=ordered 0 0

Opzioni di montaggio

Per specificare le opzioni di montaggio, usa –o flag seguito da una stringa di opzioni separate da virgole. Di seguito sono elencate alcune delle opzioni disponibili per il comando mount:

  • auto :consente di montare automaticamente il file system utilizzando il comando mount –a
  • ciclo :monta l'immagine come dispositivo loop
  • noauto :Disabilita il montaggio automatico del file system utilizzando il comando mount –a
  • noexec :Disabilita l'esecuzione di file binari sul file system
  • nouser :Non consente a un utente normale (diverso da root) di montare e smontare il file system
  • rimonta :Rimonta il file system nel caso sia già montato
  • ro :Monta il file system in sola lettura
  • rw :Monta il file system sia in lettura che in scrittura
  • utente :consente a un utente normale (diverso dal root) di montare e smontare il file system

Ad esempio, per montare la partizione /dev/xvdf1 sul punto di montaggio /test come di sola lettura con solo l'utente root in grado di montare e smontare il file system, immettere:

# mount –o nouser,ro /dev/xvdf1 /test

Per montare un'immagine ISO utilizzando il dispositivo loop (supponendo che l'immagine ISO sia presente nella directory corrente e che il punto di montaggio esista), inserisci:

# mount -o ro,loop rhel7-x86_64-dvd.iso /media/cdrom

Opzioni di montaggio diario

I file system ext3 ed ext4 hanno tre livelli di journaling che possono essere impostati con -o opzione nel comando mount o nella sezione delle opzioni di /etc/fstab:

  • dati=diario :Il livello più alto. Quello che fa più journaling. Questo scrive le voci del diario per tutte le modifiche ai dati e ai metadati. Tutti i dati vengono salvati nel journal prima di essere scritti nel file system principale.
  • dati=ordinati :La modalità predefinita. Tutti i dati vengono forzati direttamente al file system principale prima che i relativi metadati vengano salvati nel journal.
  • dati=ripristino :Il livello più basso. L'ordinamento dei dati non viene conservato. I dati possono essere scritti nel file system principale dopo che i relativi metadati sono stati salvati nel journal.

Smontaggio dei file system

Per smontare un file system, usa smonta comando. Come argomento viene utilizzato il nome della partizione, il nome del dispositivo o il punto di montaggio. Esempio:

# umount /dev/xvdd1 
# umount /test

File/etc/fstab

Il file /etc/fstab è chiamato tabella di montaggio del file system e contiene tutte le informazioni necessarie al comando mount per montare i dispositivi. Quando si aggiunge un nuovo file system, creare la voce appropriata in /etc/fstab per assicurarsi che il file system sia montato all'avvio. Quello che segue è un esempio di voci nel file /etc/fstab:

# cat /etc/fstab 
LABEL=centos_root		/        ext4      defaults         0 0
devpts     /dev/pts  devpts  gid=5,mode=620   0 0
tmpfs      /dev/shm  tmpfs   defaults         0 0
proc       /proc     proc    defaults         0 0
sysfs      /sys      sysfs   defaults         0 0
UUID=687eb83f-c16f-4fa9-bb49-1621eed3a35d      /test   ext4     defaults         0 0

La prima colonna è il dispositivo da montare. L'UUID o il nome dell'etichetta devono essere utilizzati al posto del nome del dispositivo, poiché i nomi dei dispositivi potrebbero cambiare. La seconda colonna è il punto di montaggio, ad eccezione della voce della partizione di scambio. La terza colonna è il tipo di file system. La quarta colonna specifica le opzioni di montaggio. La quinta colonna viene utilizzata dal comando dump. Il numero 1 significa eseguire il dump del file system e 0 significa che non è necessario eseguire il dump del file system. L'ultima colonna viene utilizzata dal programma fsck per determinare l'ordine in cui vengono eseguiti i controlli del file system al momento del riavvio. Il file system radice dovrebbe essere specificato con un valore di 1 e gli altri file system dovrebbero avere un valore di 2. Un valore di 0 non controlla il file system.


Linux
  1. Come creare uno scambio in Linux

  2. Come montare e smontare le unità su Linux

  3. Come creare un file e montarlo come filesystem?

  4. Come montare un file iso in Linux

  5. Come creare e montare il file system Btrfs (spiegato con esempi)

Come controllare e riparare un file system in RHEL Linux

Come montare un filesystem Linux remoto usando SSHFS

Come creare e utilizzare file di scambio su Linux

Come montare il disco NTFS su Linux

Come montare e utilizzare un'unità exFAT su un sistema Linux

Come creare un file di grandi dimensioni da 1 GB o 10 GB nel sistema Linux