Montare partizioni VFAT su Slackware

Introduzione:

Generalmente molti utenti che sfruttano il dualboot Linux/Windows si trovano a dover accedere da Linux al filesystem Windows, trovandosi in difficoltà con il montaggio e la giusta impostazione dei permessi di questo filesystem. Premetto che la Slackware vede in modo nativo questo filesystem (e non solo questo), un rapido controllo vi chiarirà le idee.

# cat /proc/filesystems | grep fat
vfat

In caso contrario dovrete procedere con la ricompilazione del Kernel includendo il giusto supporto nella sezione

# File Systems

Tratteremo due metodi, uno che offre piena libertà a tutti gli utenti, quindi permesso di leggere, scrivere e eseguire file, mentre l'altro darà le stesse libertà ma a membri di un gruppo specifico.

Configurazione:

Primo metodo

Per comodità andremo a editare il file /etc/fstab, file che contiene tutte le informazioni descrittive sui vari file system. Questo file viene letto da vari programmi, vedi mount, comando che dice al kernel di montare il file system situato su device "dev" nella directory "dir" e umount comando che stacca il file system indicato, dalla directory. Una volta aperto questo file noterete che ogni riga descrive un file system e ciascun record è diviso da spazi o tab, quindi cercate di mantenere la stessa formattazione. Prima cosa da fare è creare una dir in /mnt con il comando:

# mkdir /mnt/win

Poi dovete identificare il device o meglio la partizione "vfat" tenendo conto che gli HD EIDE si indicano con /dev/hdxy dove x è la lettera che indica il canale, se è master o slave, esempio /dev/hda indica il Primary Master, /dev/hdd il Secondary Slave, la y indica la partizione da 1 a 4 per le primarie o estese, da 4 in poi per le logiche quindi /dev/hda1 indica la prima partizione primaria sul Primary Master, /dev/hda5 la prima partizione logica sul Primary Master etc etc. Discorso uguale per gli HD SCSI che però verranno identificati come /dev/sdxy. Quindi inserire la riga nel fstab, questa che propongo ci darà permessi di lettura, scrittura ed esecuzione.

/dev/hda2/        /mnt/win         vfat         gid=100,umask=002,nosuid        0 0

Dove:

  • /dev/hda2 => è il device
  • /mnt/win => è la directory dove verrà montato il device
  • vfat => è il tipo di file system
  • gid=100 => indica il gruppo 100 quello degli users per intenderci
  • umask=002 => imposta i permessi
  • nosuid => non caricare i flag setuid
  • 0 0 => non effettua il dump per il filesystem e non specifica l'ordine di check al reboot

Ma vediamo un dettaglio di UMASK:
umask è l'opzione che imposta i permessi ed è molto importante conoscere a fondo le sue potenzialità, si presenta in questo modo "umask=000" dove la prima cifra indica i permessi dell'utente, la seconda indica i permessi per i gruppi e la terza cifra i permessi per tutti gli altri. I "modi" di permesso sono numeri ottali che corrispondono a questa tabella:

Modi R legge W scrive X esegue
0 R W X
1 R W --
2 R -- X
3 R -- --
4 -- W X
5 -- -- X
6 -- W --
7 -- -- --

Modificando a dovere l'opzione umask potrete impostare delle restrizioni alla formula 000 nettamente troppo permissiva. Non vi resta che montare la partizione (mount -a) e testare la configurazione.

Secondo Metodo:

Il secondo metodo è più complicato (di poco) ma molto comodo in caso di reti miste estese. Andremo a creare un gruppo win che raccoglierà tutti gli utenti abilitati all'uso della partizione vfat con un minimo di restrizione. La prima cosa da fare è creare il gruppo win e identificare il gid assegnato, quindi da shell impartite questo comando:

# groupadd win 

e scoprite il gid assegato al gruppo win

# grep "^win:" /etc/group |cut -d: -f3
102

Nel mio caso il valore di risposta è 102 ma potrebbe cambiare, quindi ricordate il vostro valore !
Se non lo avete fatto prima create la dir in /mnt con il comando:

# mkdir /mnt/win

e inserite o modificate la riga del vostro fstab:

/dev/hda2/        /mnt/win         vfat         gid=102,umask=002,nosuid        0 0

Notate che le poche modifiche riguardano il gid che riporta il valore trovato prima (nel mio caso 102). Ora inserite gli utenti che volete abilitare nel vostro file /etc/group, separandoli da una virgola, es.

win:x:102:loris,marco

In questo modo vi basterà aggiornare questo gruppo di utenti per permettere l'ingresso allo space windows. Umask impostato a 002 permette lettura, scrittura ed esecuzione, ovviamente questo valore è un esempio totalmente modificabile. Non vi resta che montare la partizione (mount -a) e testare la configurazione.

Considerazioni Finali:

Sicuramente le soluzioni e i metodi usati sono molti, questi due esempi vi saranno utili per incominciare a capire e apprezzare le peculiarità di linux, sistema versatile e pienamente configurabile.

Autore: Loris