Como os nomes de arquivos são armazenados?

6

Percebi que renomear um arquivo não altera seu hash. Também notei que criar um arquivo vazio fornece um arquivo de zero bytes, mas ele tem um nome de arquivo.

Como o nome do arquivo parece viajar com o arquivo em vários dispositivos, fiquei me perguntando o que exatamente é o nome do arquivo? Por que isso pode ser alterado sem alterar o hash e por que ele não ocupa espaço?

Eu acho que se eu entendi como eles são armazenados, responderia a essas perguntas.

    
por Louis 28.11.2012 / 04:18

1 resposta

9

No NTFS, todos os dados do arquivo - nome do arquivo, data de criação, permissões de acesso (pelo uso de listas de controle de acesso) e conteúdo - são armazenados como metadados na tabela de arquivos mestre . No mundo do Windows, você também pode ter ouvido falar sobre a Tabela de alocação de arquivos . Outros sistemas de arquivos possuem outros nomes e estruturas.

Todos os sistemas de arquivos funcionam dessa maneira. Uma certa quantidade de espaço é reservada, geralmente no início do disco, logo após o setor de boot . Esse espaço contém uma estrutura de dados que contém as informações para recuperar os arquivos.

A tabela de arquivos mestre não é um arquivo. São apenas dados organizados. De fato, os arquivos são apenas dados que têm um começo e um tamanho, armazenados em uma MFT, FAT ou similar. Quando você altera o nome do arquivo, você não altera o arquivo, apenas alguns bytes na tabela de arquivos mestre.

Como o nome e os atributos são diferentes dos dados, você pode baixar um arquivo armazenado em um servidor Linux em uma máquina Windows. Os dados são transferidos, não os metadados. Você precisa nomear e selecionar um local para o arquivo por conta própria (embora o servidor e o navegador possam sugerir o nome do arquivo original).

    
por 28.11.2012 / 04:40