Il kernel Linux per il filesystem Ext4 include il supporto per il funzionamento senza distinzione tra maiuscole e minuscole

Ted Ts’o, autore dei file system ext2/ext3/ext4, ha accolto nell'albero Linux-next, da cui sarà generato il rilascio del kernel Linux 5.2, un insieme le modifiche, che implementa il supporto per operazioni senza distinzione di maiuscole e minuscole nel filesystem Ext4. Le patch aggiungono anche il supporto per i caratteri UTF-8 nei nomi dei file.

La modalità di funzionamento senza distinzione di maiuscole e minuscole può essere attivata opzionalmente per singoli cataloghi usando un nuovo attributo «+F» (EXT4_CASEFOLD_FL). Quando questo attributo è impostato su una cartella, tutte le operazioni su file e sottocartelle al suo interno vengono eseguite senza considerare il caso, compreso il fatto che il caso viene ignorato durante le operazioni di ricerca e apertura dei file (ad esempio, i file Test.txt, test.txt e test.TXT all'interno di tali cartelle saranno considerati identici). Per impostazione predefinita, ad eccezione delle cartelle con l'attributo «+F», il file system continua a essere case-sensitive. Per gestire l'attivazione della modalità insensibile al caso, è stata proposta una serie modificata di utility e2fsprogs.

Le patch sono state preparate da Gabriel Krisman Bertazi, dipendente di Collabora, e accettate dopo il settimo tentativo dopo tre anni per lo sviluppo e la risoluzione di problemi. L'implementazione non apporta modifiche al formato di memorizzazione su disco e funziona esclusivamente a livello di modifica della logica di confronto dei nomi nella funzione ext4_lookup() e di sostituzione del hash nella struttura dcache (Directory Name Lookup Cache). Il valore dell'attributo «+F» è memorizzato all'interno degli inode delle singole cartelle e si applica a tutti i file e sottocartelle annidate. Le informazioni sulla codifica sono conservate nel superblocco.

Per evitare conflitti con i nomi di file esistenti, l'attributo «+F» può essere impostato solo su cartelle vuote in file system nei quali la modalità di supporto Unicode nei nomi di file e cartelle è attivata durante la fase di montaggio. I nomi degli elementi delle cartelle per cui è attivato l'attributo «+F» vengono automaticamente convertiti in minuscolo e riflessi in questo modo nel dcache, ma su disco vengono mantenuti nella forma originariamente fornita dall'utente, ossia, nonostante il trattamento dei nomi senza distinzione di maiuscole e minuscole, i nomi vengono mostrati e memorizzati senza perdita di informazioni sul caso dei caratteri (ma il sistema non permetterà di creare un nome file con gli stessi caratteri, ma con un caso diverso).

Fonte: opennet.ru

Acquista un hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista un hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster