Die Linux-kern vir FS Ext4 bevat ondersteuning vir hoofletter-onsensitiewe werking

Ted Ts'o, skrywer van die ext2/ext3/ext4-lêerstelsels, aanvaar na die Linux-volgende tak wat die basis sal vorm van die Linux 5.2 kernvrystelling, stel veranderinge, wat ondersteuning vir hoofletter-onsensitiewe bedrywighede in die Ext4-lêerstelsel implementeer. Die pleisters voeg ook ondersteuning vir UTF-8-karakters in lêername by.

Die hoofletter-onsensitiewe werkingsmodus word opsioneel geaktiveer in verhouding tot individuele gidse deur die nuwe kenmerk "+F" (EXT4_CASEFOLD_FL) te gebruik. Wanneer hierdie kenmerk op 'n gids gestel is, sal alle bewerkings met lêers en subgidse binne-in hoofletter-onsensitief wees, insluitend hoofletters sal geïgnoreer word wanneer lêers gesoek en oopgemaak word (byvoorbeeld Test.txt, test.txt en test.TXT-lêers in sulke lêers. dopgehou sal dieselfde beskou word). By verstek, met die uitsondering van gidse met die "+F"-kenmerk, bly die lêerstelsel hooflettersensitief. Om die insluiting van hoofletter-onsensitiewe modus te beheer, word 'n gewysigde stel nutsprogramme aangebied e2fsprogs.

Pleister voorberei deur Gabriel Krisman Bertazi van Collabora en aanvaar met sewende pogings na drie jaar ontwikkeling en uitskakeling van kommentaar. Die implementering verander nie die skyfbergingformaat nie en werk uitsluitlik op die vlak van die verandering van die naamvergelykingslogika in die ext4_lookup() funksie en die vervanging van die hash in die dcache (Directory Name Lookup Cache) struktuur. Die waarde van die "+F"-kenmerk word binne die inodes van individuele gidse gestoor en versprei na alle geneste lêers en subgidse. Enkoderingsinligting word in die superblok gestoor.

Om botsings met die name van bestaande lêers te vermy, kan die "+F"-kenmerk slegs gestel word op leë gidse in lêerstelsels wat Unicode-ondersteuning geaktiveer het in lêer- en gidsname tydens die opstelfase. Die name van gidsinskrywings waarvoor die "+F"-kenmerk geaktiveer is, word outomaties na kleinletters omgeskakel en in hierdie vorm in dcache weerspieël, maar word op skyf gestoor in die vorm wat aanvanklik deur die gebruiker gestel is, m.a.w. ten spyte van die verwerking van name ongeag die hoofletters, word die name gewys en gestoor sonder om inligting oor die hoofletters van karakters te verloor (maar die stelsel sal jou nie toelaat om 'n lêernaam met dieselfde karakters te skep nie, maar in 'n ander geval).

Bron: opennet.ru

Voeg 'n opmerking