Linux 7.1 riceve nuovo driver NTFS: più prestazioni e compatibilità

Un nuovo driver NTFS per Linux promette prestazioni migliori e codice più pulito rispetto a NTFS3, con possibili cambiamenti importanti per Linux 7.1. C'è attesa per l'approvazione da parte di Linus Torvalds.

Il supporto NTFS su Linux ha sempre avuto una storia complessa, fatta di compromessi tecnici e soluzioni stratificatesi nel tempo. Il file system di Microsoft, introdotto negli anni ’90 con Windows NT, resta ancora oggi uno standard de facto in un vasto numero di configurazioni. La necessità di interoperabilità ha spinto la comunità Linux a sviluppare più implementazioni: prima driver in sola lettura, poi soluzioni user-space come NTFS-3G e infine driver kernel più evoluti. Oggi, con l’avvicinarsi del ciclo di sviluppo di Linux 7.1, un nuovo candidato sembra destinato a ridefinire questo equilibrio.

Dal driver storico a NTFS3: limiti e compromessi

Una recente pull request mira a introdurre nel kernel Linux un driver NTFS completamente rinnovato, nato da un percorso evolutivo iniziato nel 2025.

Non si tratta di un semplice aggiornamento incrementale: il codice mira a sostituire progressivamente l’attuale driver NTFS3, sviluppato da Paragon Software e integrato nel kernel a partire dalla versione 5.15. L’obiettivo è migliorare prestazioni, qualità del codice e manutenibilità, senza ereditare le criticità accumulate negli anni.

Per capire il senso di questo nuovo sviluppo bisogna fare un passo indietro. Il primo driver NTFS incluso nel kernel Linux offriva solo accesso in lettura, una scelta prudente dovuta alla complessità del formato e ai rischi di corruzione dati. Successivamente è arrivato NTFS-3G, basato su FUSE, che ha portato il supporto in scrittura ma con un costo evidente in termini di overhead CPU e latenza dovuta ai continui passaggi tra spazio utente e kernel.

Con NTFS3 si è fatto un salto importante: supporto completo in kernel space, migliori performance e integrazione più stretta con il VFS (Virtual File System) Linux. Tuttavia, lo sviluppo non ha mantenuto un ritmo costante e alcune parti del codice hanno sollevato dubbi tra i maintainer, soprattutto per quanto riguarda la pulizia architetturale e le possibilità di integrazione con le API più moderne del kernel.

La nascita del nuovo driver (ex NTFSPLUS): una base più pulita

Il nuovo driver, inizialmente noto come NTFSPLUS, nasce dall’idea di ripartire dal vecchio driver NTFS originale, considerato più leggibile e lineare, costruendoci sopra tutte le funzionalità più moderne. I maintainer possono così concentrarsi sulle modifiche applicate dal progetto invece di analizzare una base di codice completamente nuova nella sua interezza.

Con le ultime revisioni, il progetto ha abbandonato il nome NTFSPLUS per adottare una denominazione più diretta: semplicemente NTFS.

Il nuovo driver utilizza il modello iomap, già adottato da file system moderni come XFS, che consente una gestione più efficiente delle operazioni di I/O. Il risultato è una riduzione dell’overhead e una maggiore scalabilità su sistemi multi-core.

Un’ulteriore novità riguarda l’ottimizzazione del readahead (cioè la lettura anticipata dei dati) applicato alla Master File Table ($MFT): essa rappresenta l’elemento centrale del file system NTFS perché contiene le informazioni su tutti i file e le directory. Anticipare in modo più efficiente la lettura di questa struttura consente di diminuire i tempi di attesa nelle operazioni che coinvolgono cartelle e metadati (le informazioni descrittive dei file), con vantaggi particolarmente evidenti su hard disk e sui sistemi di archiviazione in cui i dati vengono salvati in blocchi separati e non in sequenza lineare, quindi non sono memorizzati uno dopo l’altro in modo continuo.

Non manca anche la rimozione di limitazioni storiche: ad esempio, il vincolo dei 2 TB sui sistemi a 32 bit risulta eliminato.

Il driver aggiunge anche il supporto ai mount idmapped, una funzionalità che permette di rimappare gli identificatori di utenti e gruppi tra sistema e file system per una gestione più flessibile dei permessi. Gli interventi riguardano anche strumenti lato utente come fsck, utilizzato per verificare e correggere errori nel file system, e mkfs, impiegato per formattare le partizioni.

NTFS su Linux: prestazioni e manutenzione

Il confronto con NTFS3 non si gioca solo sulle funzionalità, ma su due fattori chiave: prestazioni e manutenzione. I primi benchmark e le analisi preliminari indicano un miglioramento nella gestione delle operazioni I/O e una minore complessità interna.

Va detto però che la vera sfida non è tanto superare NTFS3 in laboratorio, quanto garantire stabilità nel lungo periodo. Il codice del kernel Linux richiede una disciplina rigorosa: regressioni minime, compatibilità retroattiva e revisione continua.

Anche con un driver migliore, comunque, NTFS resta un file system progettato per Windows. Alcune caratteristiche, non si integrano perfettamente con il modello POSIX: un supporto NTFS migliorato offre però vantaggi enormi nei casi d’uso misti, dove la priorità è l’interoperabilità.

Prospettive per Linux 7.1 e oltre

L’inclusione del nuovo driver NTFS nel kernel Linux non è ancora garantita. Linus Torvalds dovrà valutare la maturità del codice, il feedback della mailing list e la qualità delle revisioni. Tuttavia, il fatto che il driver esprima un livello di maturazione convincente è un punto a favore.

Finalmente, dopo anni di soluzioni parziali, si intravede una convergenza: per chi lavora ogni giorno con sistemi misti Windows e Linux le novità in arrivo dalla community del kernel sono oro in vista della massima semplificazione nella gestione dei dati.

Ti consigliamo anche

Link copiato negli appunti