O NTFS (ou qualquer sistema de arquivos) suporta arquivos fora da partição?

5

Então, na minha unidade C: , havia um arquivo chamado BOOTSECT.BAK . Sem saber o que é, abri em HxD e os primeiros 14 bytes foram B BOOTMGR O C:\Windows\System32 O C:\Windows\boot T %code% M %code% G %code% R %code% correspondendo à string UTF-16LE %code% . Após algumas pesquisas, descobri que este é o VBR para Windows. Isso é instalado no setor 63 (ou 2048 no Vista +).

Depois de mais pesquisas, acaba por ser uma cópia do VBR, não a coisa real. Isso me confundiu, pois tenho certeza de que ouvi em algum lugar que o Windows fornece seu próprio arquivo em algum lugar em %code% ou %code% . Também ouvi dizer que o Windows atribui ao MBR um arquivo em um desses diretórios.

TL; DR: O NTFS (ou qualquer outro sistema de arquivos para esse assunto) pode atribuir um arquivo fora da partição? O mais provável é que com inteiros negativos ou LBA do setor inicial (isto é, -2048 para offset do setor ou 2048 para o LBA)

    
por Cole Johnson 21.12.2012 / 16:37

3 respostas

4
Does NTFS (or any file system) support files outside of the partition?

Não tanto no Windows, mas nas variantes do Unix, e dependendo de como você define o que é um arquivo, você encontrará sistemas de arquivos suportando arquivos fora da partição.

  • tmpfs suportam arquivos armazenados parcial ou totalmente na RAM.
  • procfs contém arquivos em / proc / pid / fd / que definitivamente pertencem a outros sistemas de arquivos
  • em / dev (ou / devices) você tem "arquivos" cujo conteúdo está fora da partição. Você pode acessar os VBRs e MBRs através deles (por exemplo: / dev / sda1, / dev / dsk / c0d0t0p1, ...).
  • Todos os sistemas de arquivos que suportam links simbólicos também podem classificar arquivos de locais externos.

Parece que a instalação do cygwin fornecerá um /dev directory a partir do qual você poderá acessar os dados brutos completos do disco e da partição, incluindo os VBRs e MBRs.

    
por 22.12.2012 / 15:31
6

Can NTFS (or any other file system for that matter) assign a file outside of the partition?

Não, isso não invalidaria completamente o propósito de um sistema de arquivos? Se você quer apenas manipular os 0s e 1s em bruto armazenados no disco fora de sua partição, há uma abundância de ferramentas de operação de disco de baixo nível que você pode usar. Você também pode montar outra partição dentro de uma partição NTFS montada (ou seja, você pode montar outra partição em C:\MyNewVol\ ), se os arquivos estiverem armazenados em outro sistema de arquivos.

Esses arquivos específicos que você descreveu acima são chamados de meta-arquivos e são bem definidos de acordo com a especificação NTFS. Veja o link anterior para uma descrição de vários metarquivos (por exemplo, o VBR que você mencionou é armazenado no $Boot metafile) e onde eles estão localizados no disco com relação aos limites de partição NTFS.

Além disso, com relação a todo o MBR vs. VBR, a partir da página da Wikipedia sobre VBR :

[The VBR] is the first sector of an individual partition on the device, with the first sector of the entire device being a master boot record (MBR) containing the partition table.

Assim, você pode acessar o VBR através do sistema de arquivos NTFS (supondo que você tenha as permissões apropriadas para isso), mas você não pode acessar diretamente o MBR; para isso, você faz precisa de ferramentas de disco de baixo nível.

    
por 21.12.2012 / 16:44
1

Sistemas de arquivos só endereçam dados dentro de seu próprio espaço alocado.

No entanto, um sistema operacional não tem tais limitações e pode armazenar informações lidas de qualquer lugar no disco em um arquivo.

A distinção entre o sistema operacional e o FS pode ser pequena, mas é vital.

    
por 21.12.2012 / 16:42