Linuxové jadro pre súborový systém Ext4 obsahuje podporu pre operácie bez ohľadu na veľkosť písmen

Ted Ts'o, autor súborových systémov ext2/ext3/ext4, prijatý do vetvy Linux-next, na základe ktorej sa vytvorí vydanie jadra Linux 5.2, sada zmeny, implementujúca podporu operácií bez ohľadu na veľkosť písmen v súborovom systéme Ext4. Záplaty tiež pridávajú podporu pre znaky UTF-8 v názvoch súborov.

Prevádzkový režim bez rozlišovania malých a veľkých písmen je voliteľne povolený vo vzťahu k jednotlivým adresárom pomocou nového atribútu „+F“ (EXT4_CASEFOLD_FL). Keď je tento atribút nastavený v adresári, všetky operácie so súbormi a podadresármi vo vnútri sa vykonajú bez toho, aby sa brali do úvahy malé a veľké písmená, vrátane malých a veľkých písmen sa budú pri vyhľadávaní a otváraní súborov ignorovať (napríklad súbory Test.txt, test.txt a test.TXT v takýchto adresároch budú považované za rovnaké). V predvolenom nastavení, s výnimkou adresárov s atribútom „+F“, systém súborov naďalej rozlišuje malé a veľké písmená. Na ovládanie zahrnutia režimu bez ohľadu na veľkosť písmen sa ponúka upravená sada nástrojov e2fsprogs.

Náplasti pripravil Gabriel Krisman Bertazi, zamestnanec Collabora, a prijal ich siedmy pokusy po tri roky rozvoj a odstraňovanie pripomienok. Implementácia nevykonáva zmeny formátu diskového úložiska a funguje výlučne na úrovni zmeny logiky porovnávania názvov vo funkcii ext4_lookup() a nahradenia hash v štruktúre dcache (Directory Name Lookup Cache). Hodnota atribútu „+F“ je uložená v inode jednotlivých adresárov a šíri sa do všetkých podsúborov a podadresárov. Informácie o kódovaní sú uložené v superbloku.

Aby sa predišlo kolíziám s názvami existujúcich súborov, atribút „+F“ je možné nastaviť iba pre prázdne adresáre v súborových systémoch, v ktorých je vo fáze pripájania povolená podpora Unicode v názvoch súborov a adresárov. Názvy prvkov adresára, pre ktoré je aktivovaný atribút „+F“, sa automaticky skonvertujú na malé písmená a premietnu sa do tejto podoby v dcache, ale na disk sa uložia vo forme pôvodne určenej používateľom, t.j. Napriek spracovaniu mien bez ohľadu na veľké a malé písmená sa mená zobrazujú a ukladajú bez straty informácií o veľkosti písmen (ale systém vám nedovolí vytvoriť názov súboru s rovnakými znakmi, ale v inom prípade).

Zdroj: opennet.ru

Pridať komentár