O núcleo de Linux para o sistema de ficheiros Ext4 inclúe soporte para operacións que non distinguen entre maiúsculas e minúsculas

Ted Ts'o, autor dos sistemas de ficheiros ext2/ext3/ext4, aceptada á rama Linux-next, sobre a base da cal se formará o lanzamento do núcleo Linux 5.2, un conxunto cambios, implementando soporte para operacións que non distinguen entre maiúsculas e minúsculas no sistema de ficheiros Ext4. Os parches tamén engaden soporte para caracteres UTF-8 nos nomes de ficheiros.

O modo operativo que non distingue entre maiúsculas e minúsculas está habilitado opcionalmente en relación con directorios individuais mediante o novo atributo "+F" (EXT4_CASEFOLD_FL). Cando este atributo está definido nun directorio, todas as operacións con ficheiros e subdirectorios no seu interior realizaranse sen ter en conta o caso de caracteres, incluíndo o caso de ser ignorado ao buscar e abrir ficheiros (por exemplo, os ficheiros Test.txt, test.txt e test.TXT nestes directorios consideraranse iguais). De xeito predeterminado, a excepción dos directorios co atributo "+F", o sistema de ficheiros segue distinguindo maiúsculas e minúsculas. Para controlar a inclusión do modo que non distingue entre maiúsculas e minúsculas, ofrécese un conxunto modificado de utilidades e2fsprogs.

Os parches foron preparados por Gabriel Krisman Bertazi, un empregado de Collabora, e aceptados con sétimo intentos despois tres anos desenvolvemento e eliminación de comentarios. A implementación non fai cambios no formato de almacenamento do disco e funciona unicamente ao nivel de cambiar a lóxica de comparación de nomes na función ext4_lookup() e substituír o hash na estrutura dcache (caché de busca de nomes de directorio). O valor do atributo "+F" gárdase dentro do inodo dos directorios individuais e propágase a todos os subficheiros e subdirectorios. A información de codificación almacénase no superbloque.

Para evitar colisións cos nomes dos ficheiros existentes, o atributo "+F" só se pode establecer en directorios baleiros en sistemas de ficheiros nos que o soporte Unicode nos nomes de ficheiros e directorios está activado na fase de montaxe. Os nomes dos elementos de directorio para os que está activado o atributo "+F" convértense automaticamente a minúsculas e reflíctense neste formulario en dcache, pero gárdanse no disco no formulario especificado inicialmente polo usuario, é dicir. A pesar do procesamento dos nomes, independentemente de maiúsculas e minúsculas, os nomes móstranse e gárdanse sen perder información sobre as maiúsculas e minúsculas dos caracteres (pero o sistema non che permitirá crear un nome de ficheiro cos mesmos caracteres, pero nun caso diferente).

Fonte: opennet.ru

Engadir un comentario