lpic/101/024_comandi_filesystem.md
2025-01-31 20:32:22 +01:00

4.4 KiB

Introduzione: journal

I moderni filesystem Linux hanno un diario di bordo. Questo significa che ogni operazione viene registrata in un log interno, il journal, prima di essere eseguita. Se un'operazione viene interrotta a causa di un errore di sistema, questa puo' essere ricostruita controllando il journal, evitando il danneggiamento del filesystem e la perdita di dati.

Controllare l'utilizzo dei dischi

Un comando usato per controllare quanto spazio viene usato e quanto ne resta su un determinato filesystem é du o disk usage.

1.1G	./Film/S09
8.8G	./Film/S10
32G	./Film
55G	./Criterion
86G	.

Il comportamento predefinito é quello di mostrare l'utilizzo di ogni sottodirectory, quindi l'utilizzo totale della directory corrente, incluse le sottodirectory (86G nell'esempio). Per controllare quanto profondo l'output di du dovrebbe essere, si utilizza il parametro -d N, dove N indica il livello.

Per impostazione predefinita, du mostra solo il conteggio dell'utilizzo delle directory. Per mostrare un conteggio individuale per tutti i file, aggiungere il parametro -a.

Per escludere alcuni tipi di file dal conteggio si utilizza --exclude="PATTERN":

 > du -h --exclude="*.mkv"
0	./Film/S09
0	./Film/S10
0	./Film
0	./Criterion
356K	.

Controllare lo spazio libero

du funziona a livello di file e directory. df mostra invece quanto spazio é disponibile a livello di filesystem. Mostra un elenco di tutti i filesystem montati nel sistema, inclusa la loro dimensione totale, lo spazio utilizzato, quello ancora disponibile, la percentuale e il mount-point.

[21:03 Sun Jan 26]dado@dadopc (1425):~
 > df -h
Filesystem          Type      Size  Used Avail Use% Mounted on
udev                devtmpfs   15G     0   15G   0% /dev
tmpfs               tmpfs     3.0G  1.9M  3.0G   1% /run
/dev/mapper/VG0-LV0 btrfs     465G  117G  346G  26% /

Per mostrare gli inode usati/disponibili invece dei blocchi, si usa il parametro -i:

[21:03 Sun Jan 26]dado@dadopc (1427):~
 > df -i
Filesystem          Type     Inodes IUsed IFree IUse% Mounted on
udev                devtmpfs   3.7M   596  3.7M    1% /dev
tmpfs               tmpfs      3.7M  1.2K  3.7M    1% /run
/dev/mapper/VG0-LV0 btrfs         0     0     0     - /

Il parametro -T stampa il tipo di filesystem. É possibile anche filtrare l'output per mostrare solo un tipo di filesystem con -t TYPE o escludere un dato filesystem con -x TYPE:

[21:06 Sun Jan 26]dado@dadopc (1428):~
 > df -hTt btrfs
Filesystem          Type   Size  Used Avail Use% Mounted on
/dev/mapper/VG0-LV0 btrfs  465G  117G  346G  26% /
/dev/mapper/VG0-LV0 btrfs  465G  117G  346G  26% /var/cache
/dev/mapper/VG0-LV0 btrfs  465G  117G  346G  26% /home
/dev/mapper/VG0-LV0 btrfs  465G  117G  346G  26% /.snapshots
/dev/mapper/VG0-LV0 btrfs  465G  117G  346G  26% /var/crash
/dev/mapper/VG0-LV0 btrfs  465G  117G  346G  26% /var/lib/AccountsService
/dev/mapper/VG0-LV0 btrfs  465G  117G  346G  26% /var/lib/gdm3
/dev/mapper/VG0-LV0 btrfs  465G  117G  346G  26% /var/log
/dev/mapper/VG0-LV0 btrfs  465G  117G  346G  26% /var/tmp

Manutenzione dei filesystem ext2, ext3 e ext4

Esiste l'utility fsck (filesystem check). Sintassi:

fsck /dev/sda1

NOTA: MAI, MAI eseguire fsck su un filesystem montato

Alcune opzioni:

  • -A: controlla tutti i filesystem elencati in /etc/fstab
  • -C: visualizza una barra di avanzamento durante il controllo (solo ext2/3/4)
  • -N: dry-run
  • -R: se usato insieme a -A, salta il controllo del filesystem root
  • -V: verbose

fsck non controlla il filesystem, ma richiama l'utilitá appropriata per il tipo di filesystem; e2fsck nel caso di ext2/3/4. Per impostazione predefinita, viene eseguito in modalitá interattiva: quando viene rilevato un errore, viene chiesto all'utente come procedere. Ci sono alcune opzioni per eseguire e2fsck in modalitá automatica:

  • -p: tenta di correggere autonomamente gli errori. Se l'errore richiede l'intervento dell'amministratore, fornisce una descrizione e terminerá la propria esecuzione
  • -y: risponde yes a tutte le domande
  • -n: risponde no a tutte le domande

Manutenzione di un filesystem xfs

Esiste l'utility xfs_repair, la cui sintassi di base:

xfs_repair /dev/sda1
  • -n: dry-run. Nessuna modifica: il filesystem verrá controllato, ma non verrá effettuata alcuna riparazione.