Nell'informatica, un filesystem controlla il modo in cui i dati vengono archiviati e recuperati e aiuta a organizzare i file sul supporto di archiviazione. Senza un filesystem, le informazioni in archivio sarebbero un grande blocco di dati e non potresti dire dove si è fermata un'informazione e dove è iniziata la successiva. Un filesystem aiuta a gestire tutto questo fornendo nomi ai file che memorizzano dati e mantenendo una tabella di file e directory, insieme alla loro posizione di inizio/fine, dimensione totale, ecc., sui dischi all'interno del filesystem.
Il terminale Linux
- I 7 migliori emulatori di terminale per Linux
- 10 strumenti da riga di comando per l'analisi dei dati in Linux
- Scarica ora:cheat sheet SSH
- Cheat sheet sui comandi avanzati di Linux
- Esercitazioni sulla riga di comando di Linux
In Linux, quando si crea una partizione del disco rigido o un volume logico, il passaggio successivo è di solito creare un filesystem formattando la partizione o il volume logico. Questo how-to presuppone che tu sappia come creare una partizione o un volume logico e che tu voglia semplicemente formattarlo per contenere un filesystem e montarlo.
Crea un filesystem
Immagina di aver appena aggiunto un nuovo disco al tuo sistema e creato una partizione denominata /dev/sda1 su di esso.
- Per verificare che il kernel Linux possa vedere la partizione, puoi cat fuori /proc/partitions in questo modo:
[root@localhost ~]# cat /proc/partitions
major minor #blocks name
253 0 10485760 vda
253 1 8192000 vda1
11 0 1048575 sr0
11 1 374 sr1
8 0 10485760 sda
8 1 10484736 sda1
252 0 3145728 dm-0
252 1 2097152 dm-1
252 2 1048576 dm-2
8 16 1048576 sdb
- Decidi che tipo di filesystem vuoi creare, come ext4, XFS o qualsiasi altra cosa. Ecco alcune opzioni:
[root@localhost ~]# mkfs.<tab><tab>
mkfs.btrfs mkfs.cramfs mkfs.ext2 mkfs.ext3 mkfs.ext4 mkfs.minix mkfs.xfs
- Ai fini di questo esercizio, scegli ext4. (Mi piace ext4 perché ti consente di ridurre il filesystem se necessario, una cosa che non è così semplice con XFS.) Ecco come può essere fatto (l'output potrebbe differire in base al nome/dimensioni del dispositivo):
[root@localhost ~]# mkfs.ext4 /dev/sda1
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=8191 blocks
194688 inodes, 778241 blocks
38912 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=799014912
24 block groups
32768 blocks per group, 32768 fragments per group
8112 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
Allocating group tables: done
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done
- Nel passaggio precedente, se desideri creare un tipo diverso di filesystem, utilizza un mkfs diverso variazione del comando.
Monta un filesystem
Dopo aver creato il tuo filesystem, puoi montarlo nel tuo sistema operativo.
- In primo luogo, identifica l'UUID del tuo nuovo filesystem. Emetti il nero comando per elencare tutti i dispositivi di archiviazione a blocchi conosciuti e cercare sda1 nell'output:
[root@localhost ~]# blkid
/dev/vda1: UUID="716e713d-4e91-4186-81fd-c6cfa1b0974d" TYPE="xfs"
/dev/sr1: UUID="2019-03-08-16-17-02-00" LABEL="config-2" TYPE="iso9660"
/dev/sda1: UUID="wow9N8-dX2d-ETN4-zK09-Gr1k-qCVF-eCerbF" TYPE="LVM2_member"
/dev/mapper/test-test1: PTTYPE="dos"
/dev/sda1: UUID="ac96b366-0cdd-4e4c-9493-bb93531be644" TYPE="ext4"
[root@localhost ~]#
- Esegui il seguente comando per montare /dev/sd1 dispositivo :
[root@localhost ~]# mkdir /mnt/mount_point_for_dev_sda1
[root@localhost ~]# ls /mnt/
mount_point_for_dev_sda1
[root@localhost ~]# mount -t ext4 /dev/sda1 /mnt/mount_point_for_dev_sda1/
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 7.9G 920M 7.0G 12% /
devtmpfs 443M 0 443M 0% /dev
tmpfs 463M 0 463M 0% /dev/shm
tmpfs 463M 30M 434M 7% /run
tmpfs 463M 0 463M 0% /sys/fs/cgroup
tmpfs 93M 0 93M 0% /run/user/0
/dev/sda1 2.9G 9.0M 2.7G 1% /mnt/mount_point_for_dev_sda1
[root@localhost ~]#Il df -h comando mostra quale filesystem è montato su quale punto di montaggio. Cerca /dev/sd1 . Il comando mount sopra utilizzava il nome del dispositivo /dev/sda1 . Sostituiscilo con l'UUID identificato nel blkid comando. Inoltre, tieni presente che è stata creata una nuova directory per montare /dev/sda1 sotto /mnt .
- Un problema con l'utilizzo del comando mount direttamente sulla riga di comando (come nel passaggio precedente) è che il mount non persisterà tra i riavvii. Per montare il filesystem in modo persistente, modifica /etc/fstab per includere le informazioni di montaggio:
UUID=ac96b366-0cdd-4e4c-9493-bb93531be644 /mnt/mount_point_for_dev_sda1/ ext4 defaults 0 0
- Dopo aver modificato /etc/fstab , puoi smontare /mnt/mount_point_for_dev_sda1 ed esegui il comando mount -a per montare tutto ciò che è elencato in /etc/fstab . Se tutto è andato per il verso giusto, puoi comunque elencare df -h e guarda il tuo filesystem montato:
root@localhost ~]# umount /mnt/mount_point_for_dev_sda1/
[root@localhost ~]# mount -a
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 7.9G 920M 7.0G 12% /
devtmpfs 443M 0 443M 0% /dev
tmpfs 463M 0 463M 0% /dev/shm
tmpfs 463M 30M 434M 7% /run
tmpfs 463M 0 463M 0% /sys/fs/cgroup
tmpfs 93M 0 93M 0% /run/user/0
/dev/sda1 2.9G 9.0M 2.7G 1% /mnt/mount_point_for_dev_sda1
- Puoi anche controllare se il filesystem è stato montato:
[root@localhost ~]# mount | grep ^/dev/sd
/dev/sda1 on /mnt/mount_point_for_dev_sda1 type ext4 (rw,relatime,seclabel,stripe=8191,data=ordered)
Ora sai come creare un filesystem e montarlo in modo persistente o non persistente all'interno del tuo sistema.