Kerneli Linux për sistemin e skedarëve Ext4 përfshin mbështetje për funksionimin e pandjeshëm ndaj rasteve

Ted Ts'o, autor i sistemeve të skedarëve ext2/ext3/ext4, pranuar në degën e ardhshme Linux, në bazë të së cilës do të formohet lëshimi i kernelit Linux 5.2, një grup ndryshimet, duke zbatuar mbështetje për operacione të pandjeshme ndaj rasteve në sistemin e skedarëve Ext4. Arna gjithashtu shtojnë mbështetje për karakteret UTF-8 në emrat e skedarëve.

Modaliteti i funksionimit i pandjeshëm ndaj shkronjave të vogla aktivizohet opsionalisht në lidhje me drejtoritë individuale duke përdorur atributin e ri "+F" (EXT4_CASEFOLD_FL). Kur ky atribut vendoset në një direktori, të gjitha operacionet me skedarë dhe nëndrejtori brenda do të kryhen pa marrë parasysh rastin e karaktereve, duke përfshirë rastin do të shpërfillet gjatë kërkimit dhe hapjes së skedarëve (për shembull, skedarët Test.txt, test.txt dhe test.TXT në drejtori të tilla do të konsiderohen të njëjta). Si parazgjedhje, me përjashtim të drejtorive me atributin "+F", sistemi i skedarëve vazhdon të jetë i ndjeshëm ndaj shkronjave të vogla. Për të kontrolluar përfshirjen e mënyrës së pandjeshme ndaj rasteve, ofrohet një grup i modifikuar shërbimesh e2fsprogs.

Arnimet u përgatitën nga Gabriel Krisman Bertazi, punonjës i Collabora, dhe u pranuan me i shtati përpjekjet pas tre vjet zhvillimin dhe eliminimin e komenteve. Implementimi nuk bën ndryshime në formatin e ruajtjes së diskut dhe funksionon vetëm në nivelin e ndryshimit të logjikës së krahasimit të emrit në funksionin ext4_lookup() dhe zëvendësimit të hash-it në strukturën dcache (Directory Name Lookup Cache). Vlera e atributit "+F" ruhet brenda inodit të drejtorive individuale dhe përhapet në të gjitha nënskedarët dhe nëndirektoritë. Informacioni i kodimit ruhet në superbllokun.

Për të shmangur përplasjet me emrat e skedarëve ekzistues, atributi "+F" mund të vendoset vetëm në drejtoritë boshe në sistemet e skedarëve, në të cilat mbështetja e Unicode në emrat e skedarëve dhe direktorive është aktivizuar në fazën e montimit. Emrat e elementeve të drejtorisë për të cilët aktivizohet atributi “+F” konvertohen automatikisht në shkronja të vogla dhe pasqyrohen në këtë formë në dcache, por ruhen në disk në formën e specifikuar fillimisht nga përdoruesi, d.m.th. Megjithë përpunimin e emrave pavarësisht nga rasti, emrat shfaqen dhe ruhen pa humbur informacionin për rastin e karaktereve (por sistemi nuk do t'ju lejojë të krijoni një emër skedari me të njëjtat karaktere, por në një rast tjetër).

Burimi: opennet.ru

Shto një koment