Ted Ts’o, forfatteren af filsystemerne ext2/ext3/ext4, til Linux-next-grenen, som vil danne grundlag for udgivelsen af Linux-kernen 5.2, et sæt , der implementerer understøttelse af registreringsuafhængige operationer i filsystemet Ext4. Patchene tilføjer også understøttelse af UTF-8-tegn i filnavne.
Registreringsuafhængig tilstand kan valgfrit aktiveres i forbindelse med specifikke mapper ved hjælp af den nye attribut «+F» (EXT4_CASEFOLD_FL). Når denne attribut er indstillet på en mappe, vil alle fil- og undermappeoperationer indeni blive udført uden hensyntagen til tegnregistrering, herunder vil registreringen blive ignoreret ved søgninger og åbning af filer (for eksempel vil filerne Test.txt, test.txt og test.TXT i sådanne mapper betragtes som identiske). Som standard, bortset fra mapper med attributten «+F», fortsætter filsystemet med at være registreringsafhængigt. Der tilbydes et modificeret sæt værktøjer til at styre aktiveringen af registreringsuafhængig tilstand. .
Patchene er forberedt af Gabriel Krisman Bertazi, medarbejder i Collabora, og er accepteret efter forsøg efter af udvikling og løsning af kommentarerne. Implementeringen ændrer ikke diskens lagringsformat og fungerer udelukkende på niveauet for ændring af logikken til sammenligning af navne i funktionen ext4_lookup() og udskiftning af hashen i strukturen dcache (Directory Name Lookup Cache). Værdien af attributten «+F» gemmes inden i inode for de enkelte mapper og gælder for alle underliggende filer og undermapper. Oplysninger om kodning gemmes i superblokken.
For at undgå kollisioner med navnene på eksisterende filer kan attributten «+F» kun indstilles på tomme mapper i filsystemer, hvor Unicode-understøttelse for fil- og mappenavne er aktiveret under monteringen. Navnene på elementerne i mapperne, hvor attributten «+F» er aktiveret, oversættes automatisk til små bogstaver og vises i denne form i dcache, men gemmes på disken i den oprindeligt angivne brugerform, dvs. på trods af behandlingen af navne uafhængigt af registrering vises og gemmes navnene uden tab af information om tegnregistreringen (men systemet tillader ikke at oprette et filnavn med de samme tegn, men i en anden registrering).
Kilde: opennet.ru
