La Linukso-kerno por FS Ext4 inkluzivas subtenon por usklec-malsentema operacio

Ted Ts'o, verkinto de la ext2/ext3/ext4 dosiersistemoj, akceptis al la Linukso-sekva branĉo kiu formos la bazon de la Linukso 5.2 kerneldono, aro ŝanĝoj, kiuj efektivigas subtenon por uskleksentemaj operacioj en la dosiersistemo Ext4. La flikoj ankaŭ aldonas subtenon por UTF-8-signoj en dosiernomoj.

La majusksentema operacia reĝimo estas laŭvole ebligita rilate al individuaj dosierujoj uzante la novan atributon "+F" (EXT4_CASEFOLD_FL). Kiam ĉi tiu atributo estas agordita en dosierujo, ĉiuj operacioj kun dosieroj kaj subdosierujoj ene estos majuskkle-malsentemaj, inkluzive de uskleco estos ignorita dum serĉado kaj malfermo de dosieroj (ekzemple, Test.txt, test.txt kaj test.TXT dosieroj en tiaj). dosierujoj estos konsiderataj la samaj). Defaŭlte, kun la escepto de dosierujoj kun la atributo "+F", la dosiersistemo daŭre distingas minusklecojn. Por kontroli la inkludon de usklec-sensentema reĝimo, modifita aro de utilecoj estas ofertita e2fsprogs.

Flikiloj preparitaj de Gabriel Krisman Bertazi de Collabora kaj akceptitaj kun sepa provoj poste tri jaroj evoluo kaj forigo de komentoj. La efektivigo ne ŝanĝas la diskon-stokadoformaton kaj funkcias nur je la nivelo de ŝanĝado de la nomkompara logiko en la funkcio ext4_lookup() kaj anstataŭigo de la hash en la strukturo dcache (Directory Name Lookup Cache). La valoro de la atributo "+F" estas konservita ene de la inodoj de individuaj dosierujoj kaj disvastiĝas al ĉiuj nestitaj dosieroj kaj subdosierujoj. Kodigaj informoj estas stokitaj en la superbloko.

Por eviti koliziojn kun la nomoj de ekzistantaj dosieroj, la atributo "+F" nur povas esti agordita al malplenaj dosierujoj en dosiersistemoj kiuj havas Unikodan subtenon ebligita en dosiero kaj dosierujo-nomoj dum la munta fazo. La nomoj de dosierujoj por kiuj la atributo "+F" estas ebligita estas aŭtomate konvertitaj al minusklo kaj reflektitaj en ĉi tiu formo en dcache, sed estas konservitaj sur disko en la formo komence fiksita de la uzanto, t.e. malgraŭ la prilaborado de nomoj sendepende de uskleco, la nomoj estas montrataj kaj konservataj sen perdi informojn pri la majuskloj de signoj (sed la sistemo ne permesos al vi krei dosiernomon kun la samaj signoj, sed en malsama kazo).

fonto: opennet.ru

Aldoni komenton