Mi chiedevo allora se non fosse il caso di ricominciare a pacchettizzare NTFS-3G, visto che non lo si fa più da parecchio tempo (dai tempi della Slackware 11.x).
Tra l'altro, le ultime versioni introducono una novità abbastanza clamorosa che all'inizio ha provocato parecchie perplessità; molti utenti hanno anche inviato messaggi di protesta al forum ufficiale del progetto.
In pratica, adesso NTFS-3G incorpora il supporto completo a UTF-8 e usa unicamente quella codifica ignorando completamente le impostazioni "LOCALE" dell'utente; in questo modo si ottiene un driver universale che funziona perfettamente, dagli USA all'Italia, dal Tibet all'India, dalla Cina al Giappone, etc.
La questione è che, dopo aver installato questa nuova versione di NTFS-3G, vi trovate davanti al solito problema dei nomi di file e directory, sulle partizioni NTFS, che non vengono visualizzati correttamente dal driver quando contengono vocali accentate e altri caratteri strani; inoltre, si ottiene un messaggio di errore se si tenta di creare nomi di file e directory con quelle caratteristiche.
Il problema viene risolto impostando tutto il sistema a UTF-8.
A tale proposito, bisogna impostare setenv LANG it_IT.UTF-8 in /etc/profile.d/lang.csh e export LANG=it_IT.UTF-8 in /etc/profile.d/lang.sh; inoltre, in /etc/fstab bisogna impostare locale=it_IT.UTF-8 per le partizioni gestite da NTFS-3G.
A questo punto, dopo il riavvio del computer, digitando dal terminale il comando locale dovreste ottenere:
Codice: Seleziona tutto
LANG=it_IT.UTF-8
LC_CTYPE="it_IT.UTF-8"
LC_NUMERIC="it_IT.UTF-8"
LC_TIME="it_IT.UTF-8"
LC_COLLATE=C
LC_MONETARY="it_IT.UTF-8"
LC_MESSAGES="it_IT.UTF-8"
LC_PAPER="it_IT.UTF-8"
LC_NAME="it_IT.UTF-8"
LC_ADDRESS="it_IT.UTF-8"
LC_TELEPHONE="it_IT.UTF-8"
LC_MEASUREMENT="it_IT.UTF-8"
LC_IDENTIFICATION="it_IT.UTF-8"
LC_ALL=
Non solo quindi nelle patizioni NTFS, ma anche nelle penne USB formattate in FAT32, nei CD audio (titoli delle canzoni con vocali accentate), etc; in pratica, è scomparso il problema della corretta gestione della nazionalità dei caratteri!
I dischi esterni USB non li ho ancora provati, ma credo che tutto funzioni correttamente anche in quel caso.
Ovviamente, vecchi file di testo prelevati da partizioni DOS, Windows 3.1, Mehehehehehe, 95, 98, XP, etc, creati con codifiche strane (IBM-850, CP-1252, ISO-88591, etc) non verranno visualizzati correttamente; ma ciò non è certo colpa di Linux, bensì del fatto che ci sono in giro troppe codifiche incompatibili tra loro (e troppi editor grossolani come MS-NotePad).
Affinché tutto funzioni correttamente, è necessario che l'intero mondo dell'informatica si uniformi all'uso di UTF-8, il quale è stato creato proprio con quello scopo; si tratta di una codifica a 8+8 bit che permette di rappresentare i primi 256 caratteri (tutti quelli rappresentabili con i primi 8 bit, 2^8=256) coincidenti con i codici ASCII (quindi, compatibilità verso il basso), più altre decine di migliaia di caratteri con codifica a 8+8=16 bit, per un totale di 2^16=65536 caratteri.
P.S. Dopo che ho apportato queste modifiche sul mio sistema, mi sembrava che tutto fosse filato troppo liscio; infatti, mi sono accorto che adesso KWrite crasha in fase di chiusura!
Ma la cosa assurda è che il crash si verifica solo per l'utente root e non per gli utenti normali!
P.P.S. Se qualcuno di voi ne ha voglia, può sperimentare la nuova versione di NTFS-3G (2009.2.1) ricreando il package dallo SlackBuild di Pat presente nel ramo slackware/source/a; in particolare, sarebbe interessante sapere se tutto funziona correttamente anche con gli HD esterni USB FAT32/NTFS.
P.P.P.S. Chi aveva apportato quella famosa modifica a /sbin/mount.ntfs-3g, si ricordi di rimuovere quello script in modo che il package NTFS-3G possa ricreare il link simbolico a /bin/ntfs-3g.
Divertitevi.

