Ubuntu

Compatibilità exFAT in Ubuntu

Compatibilità exFAT in Ubuntu
Gli utenti che eseguono Linux su desktop spesso si imbattono nel problema o nella compatibilità del file system. Soprattutto quando condividono i dati tramite un dispositivo di archiviazione secondario come un disco rigido esterno o una chiavetta USB. Il problema spesso nasce a causa della natura proprietaria di file system come exFAT e NTFS. La compatibilità per exFAT o NTFS generalmente non arriva per una distribuzione pronta all'uso. Invece, devi installare pacchetti aggiuntivi per supportare questi filesystem.

Le cose sono cambiate dall'inizio di exFAT nel 2006, i repository Ubuntu ora sono dotati di pacchetti che supportano file system come exFAT in modo da poter condividere facilmente file su diversi sistemi operativi.

Per quanto riguarda exFAT

Il file system exFAT è il tentativo di Microsoft di rivitalizzare i suoi antichi file system FAT (e FAT32) per supportare i dispositivi USB. exFAT è progettato per gestire in modo specifico i file su supporti di archiviazione flash con grandi dimensioni di archiviazione, come l'archiviazione USB esterna e le schede SD.

Quando dico dispositivi di archiviazione di grandi dimensioni, intendo dispositivi con più di un semplice 4GiB di spazio di archiviazione non elaborato. 4GiB è il limite di memoria per i file system FAT32 per superare quale exFAT (o FAT esteso) è stato sviluppato da Microsoft. Perché non usare NTFS potresti chiedere??

Quando è stato creato exFAT, nel lontano 2006, i costi generali del file system erano ancora una cosa. Quindi NTFS non era una soluzione fattibile per piccoli dispositivi di archiviazione perché NTFS stesso occupava un po' di spazio. Inoltre, exFAT è ancora un'opzione popolare per i sistemi embedded a causa del suo basso consumo energetico e del design più semplice che è possibile implementare a livello di firmware con conseguente miglioramento delle prestazioni.

Sebbene la maggior parte delle unità esterne siano ora NTFS e probabilmente è meglio formattare quelle più recenti in quel formato, abbiamo ancora un bel po' di dispositivi esistenti che funzionano su exFAT e quindi è meglio avere un sistema compatibile con exFAT che non averne uno.

Compatibilità exFAT

Se infili un'unità USB formattata con il file system exFAT su, ad esempio, un Ubuntu 18.04 e prova a montarlo, riceverai un errore simile a questo:

Per superare questo problema, possiamo semplicemente installare il pacchetto exfat-utilis che ci consentirà di creare, etichettare, leggere e scrivere il filesystem exFAT su qualsiasi nodo di dispositivo, sia esso un dispositivo USB o una partizione del disco rigido.

$ sudo apt install exfat-utils

Se vuoi solo le capacità di lettura e scrittura, usa solo il pacchetto exfat-fuse.

$ sudo apt install exfat-fuse

Quest'ultimo è anche installato come parte della dipendenza exfat-utils in modo da poter leggere e scrivere comunque. Una volta installato il pacchetto, puoi montare il tuo dispositivo USB senza alcun problema utilizzando il comando mount utilizzando la CLI o semplicemente utilizzando la GUI.

Ad ogni modo, non richiederebbe alcun riavvio ed è una procedura abbastanza semplice.

Informazioni su FUSE

Noteresti che l'unità exfat si chiama exfat-fuse. Cosa significa? Filesystem in Userspace, o FUSE, significa che il programma che implementa e gestisce i file system exfat viene eseguito in userspace invece di essere eseguito in modalità Kernel.

La gestione dello storage, come l'I/O e la gestione della memoria, è una responsabilità fondamentale del kernel del sistema operativo. Diversi file system nell'etica UNIX vengono come moduli del kernel diversi e fanno il loro lavoro nella modalità kernel stessa. FUSE consente ai filesystem di funzionare come normali applicazioni (come un editor di testo o un browser) nello spazio utente e FUSE, esso stesso funge da ponte tra il kernel e il filesystem. Questo non significa che puoi formattare dispositivi arbitrari senza privilegi di root.

Per gli utenti normali, la sua distinzione è senza differenze, ma i sistemi hanno un modo sottile di scomporre e conoscere semplici fatti sulla modalità di esecuzione può far risparmiare molti problemi agli amministratori di sistema attenti.

Creazione di file system exFAT

Creiamo un'etichetta GPT per una chiavetta USB e formattiamola con il file system exfat. Supponendo che tu abbia installato le utilità parted ed exfat-utils utilizzando il comando apt get corrispondente, sei pronto per seguire i passaggi mostrati di seguito.

Innanzitutto, usa l'utilità parted per assegnare al dispositivo USB un'etichetta GPT (o MBR). Ci atteniamo al GPT perché è lo standard del settore. Il dispositivo USB stesso appare nel nodo del dispositivo /dev/sdb e se sei in doppio puoi usare il comando lsblk per elencare tutti i dispositivi a blocchi e selezionare quello che rappresenta la capacità di archiviazione della tua chiavetta USB. Una volta che il nodo del dispositivo è noto, diciamo che è /dev/sdb usa il seguente comando per aprire l'utilità parted.

$ sudo parted -a ottimale /dev/sdb
(parted) mklabel gpt

Il secondo comando con crea una nuova etichetta gpt. Perderai tutti i dati nella tua chiavetta USB, quindi fai molta attenzione e assicurati di avere il backup!  Quindi usa il comando print per conoscere le dimensioni del tuo dispositivo di archiviazione.

(parted) stampa

Nello screenshot sopra, ha una dimensione di 4010 MB. Quindi creiamo una partizione che occupi l'intero dispositivo di archiviazione.

(parte) unità MB
(parted) mkpart primary 1 4009

L'unico MB di spazio rimasto prima e dopo era qualcosa su cui ho insistito, nel mio caso specifico. Dire "la partizione non è allineata per prestazioni ottimali" quando ho usato 0 4010 come punto iniziale e finale per la mia partizione. Potrebbe essere necessario sperimentare in modo simile.

Una volta creata la partizione, puoi tranquillamente uscire dall'utilità parted.

(separato) esci

L'elenco dei dispositivi a blocchi, ancora una volta, ti mostrerebbe una nuova partizione sotto il dispositivo /dev/sdb, questo sarà /dev/sdb1.

Ora chiamiamo semplicemente mkfs.utility exfat per formattare questa partizione con il file system exfat.

$ sudo mkfs.exfat /dev/sdb1

È possibile scrivere alcuni file fittizi in questo dispositivo, dopo averlo montato (il montaggio può essere eseguito facilmente utilizzando la GUI del file system). Prova a collegare la stessa chiavetta USB a un sistema Windows e se tutto funziona, sarai in grado di leggere e scrivere su questo dispositivo senza problemi.

Utilità di exFAT

Se tu o i tuoi amici e colleghi utilizzate un dispositivo Windows insieme a una macchina Linux, formattare ogni supporto di archiviazione con EXT2,  EXT4, XFS o ZFS o qualsiasi altro file system UNIX potrebbe non essere una buona idea.

Le cose possono peggiorare ulteriormente se utilizzi una scheda SD formattata con uno di questi file system e la utilizzi nella tua fotocamera. Un giorno intero di clic non sarebbe mai stato registrato e non te ne accorgeresti. exFAT, come NTFS, è facilmente supportato sia su Linux che su Windows ed è attivamente gestito da Microsoft, garantendo la più ampia gamma di applicabilità.

Ciò rende exFAT un ponte affidabile per trasferire dati da un sistema a un altro e speriamo che questa guida ti abbia aiutato a capire meglio come farlo.

I migliori giochi da riga di comando per Linux
La riga di comando non è solo il tuo più grande alleato quando usi Linux, ma può anche essere una fonte di intrattenimento perché puoi usarla per gioc...
Le migliori app di mappatura del gamepad per Linux
Se ti piace giocare su Linux con un gamepad invece di un tipico sistema di input di tastiera e mouse, ci sono alcune app utili per te. Molti giochi pe...
Strumenti utili per i giocatori Linux
Se ti piace giocare su Linux, è probabile che tu abbia utilizzato app e utilità come Wine, Lutris e OBS Studio per migliorare l'esperienza di gioco. O...