4.1 KiB
Montare e smontare un filesystem
Il comando per montare manualmente un filesystem si chiama mount:
mount -t TYPE DEVICE MOUNTPOINT
Il mountpoint non deve essere vuoto, ma deve esistere. Qualsiasi file sará inaccessibile fino a che il filesystem sará montato.
Per smontare il filesystem: umount MOUNTPOINT o umount DEVICE
Elencari i filesystem
Se si digita mount si ottiene un elenco dei filesystem montati nel sistema. Il parametro -t permette di filtrare l'output per tipo di filesystem. É possibile specificare piú filesystem contemporaneamente separandoli con una virgola.
Alcuni parametri del comando mount:
-a: monta tutti i filesystem elencati in/etc/fstab-o: passa un elenco di opzioni di montaggio separate da virgole-ro: monta il filesystem in sola lettura-rw: monta il filesystem in modalitá scrivibile
Alcuni parametri del comando umount:
-a: smonta tutti i filesystem elencati in/etc/fstab-f: forza lo smontaggio-r: rende il filesystem di sola lettura
File aperti
Se, quando si smonta un filesystem, si incontra il messaggio di errore che indica che la destinazione é occupata (target is busy), si puo' usare il comando lsof DEVICE, per vedere un elenco di processi e a quali file accedono.
Montare un filesystem all'avvio
Il file /etc/fstab contiene la lista dei filesystem che devono essere montati all'avvio del sistema. É costruito nel seguente modo:
# <file system> <mount point> <type> <options> <dump> <pass>
/dev/sda1 / btrfs defaults 0 0
UUID=2858f3c1-995f-46ca-8164-76836b7860d2 /media/user/ btrfs defaults 0 2
dove:
FILESYSTEM: il filesystem da montare. Al posto del dispositivo, é possibile specificare lo UUID (Universally Unique Identifier) o l'etichetta della partizioneUUID=LABEL=
OPTIONS: le opzioni di montaggio, che saranno passate a mountDUMP: indica se un filesystem debba essere considerato per il backup dal comando dump. Solitamente é zeroPASS: quando é diverso da zero, definisce l'ordine in cui i filesystem saranno controllati all'avvio
Le opzioni sono un elenco di parametri, separati da virgole:
atimeenoatime: per impostazione predefinita, ogni volta che un file viene letto, le informazioni sul tempo di accesso vengono aggiornate. Disabilitare questa opzione aumenta le performanceautoenoauto: se il filesystem puo' o non puo' essere montato automaticamente conmount -adefaults: passa a mount le opzionirw,dev,suid,exec,auto,nouser,asyncexecenoexec: consente o nega l'esecuzione di file binari sul filesystemuserenouser: consente o meno a un utente normale di montare il filesystemroerwremount: tenterá di rimontare un filesystem giá montato. Non viene usato in/etc/fstab, da come parametro del comandomount -o.synceasync: indica se eseguire le operazioni di I/O sul filesystem in modo sincrono o asincrono
Montare con Systemd
Bisogna creare un file di configurazione .mount, denominato mount unit, in /etc/systemd/system.
[Unit]
Description=Additional drive
[Mount]
What=/dev/disk/by-uuid/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
Where=
Type=
Options=
[Install]
WantedBy=multi-user.target
Nello specifico:
What: cosa deve essere montato. Il volume deve essere specificato nella forma/dev/disk/by-uuid/UUIDWantedBy: usato per la gestione delle dipendenze
Per funzionare correttamente, l'unitá di montaggio deve avere lo stesso nome del punto di mount. Se, per esempio, il punto di mount fosse
/mnt/external, l'unitá si chiamerámnt-external.mountemnt-external.automount
Auto-mount
Le unitá di montaggio possono essere montate in automatico ogni volta che si accede al punto di mount. Basta creare, accanto al file .mount, un file .automount:
Description=Automount Additional Drive
[Automount]
Where=
[Install]
WantedBy=multi-user.target
Ora ricaricare systemd e avviare l'unitá:
systemctl daemon-reload
systemctl enable --now mnt-external.automount