Sistema de arquivos FAT entre o MBR e a primeira partição

1

Eu tenho um antigo disco flash USB de 64MB que parece ter MBR:

root@3:~# fdisk -lu /dev/sdd

Disk /dev/sdd: 64 MB, 64880640 bytes
2 heads, 54 sectors/track, 1173 cylinders, total 126720 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x6f20736b

   Device Boot      Start         End      Blocks   Id  System
/dev/sdd1            2048      126719       62336    6  FAT16
root@3:~# 

/dev/sdd1 é um sistema de arquivos FAT16:

root@3:~# file -s /dev/sdd1
/dev/sdd1: sticky x86 boot sector, mkdosfs boot message display, code offset 0x3c, OEM-ID " mkdosfs", sectors/cluster 2, root entries 512, Media descriptor 0xf8, sectors/FAT 244, sectors 124672 (volumes > 32 MB) , serial number 0x6b067135, label: "           ", FAT (16 bit)
root@3:~# 

Consigo montar essa partição /dev/sdd1 e ler e gravar arquivos nela. Agora a parte estranha é que eu também sou capaz de montar /dev/sdd e eu posso listar os arquivos naquele sistema de arquivos. O sistema de arquivos em /dev/sdd parece ter sido criado pelo Windows XP, pois usava MSDOS5.0 como ID de OEM:

root@3:~# file -s /dev/sdd
/dev/sdd: sticky x86 boot sector, code offset 0x3c, OEM-ID "MSDOS5.0", sectors/cluster 2, root entries 512, Media descriptor 0xf8, sectors/FAT 247, heads 255, sectors 126720 (volumes > 32 MB) , serial number 0x50435598, unlabeled, FAT (16 bit)
root@3:~# 

Além disso, depois de montar o /dev/sdd em / media e executar ls -l /media , um dos arquivos é chamado "Novo documento de texto.txt". Eu sei que é possível criar um sistema de arquivos diretamente para o dispositivo sem partições, mas, nesse caso, não haverá MBR e fdisk deve reclamar que não existe uma tabela de partição válida.

Eu corrijo que provavelmente havia um sistema de arquivos FAT16 criado para todo o disco flash USB no Windows e depois havia um MBR e uma única partição criada para este disco flash, mas a área do setor 1 para 2047 era nunca tocou e havia Windows criado estrutura de sistema de arquivos FAT16 no lugar pelo menos até o ponto que eu era capaz de montar isso com mount utilitário?

    
por Martin 01.12.2014 / 21:14

2 respostas

0

É a coisa que você supõe, ou talvez o MBR que você detectou seja um MBR de proteção e o disco foi, possivelmente, em um ponto, um disco de inicialização UEFI. Do gdisk /dev/sdd para mais informações sobre o disco e sua estrutura de partição. Você precisará do pacote gptfdisk se ainda não o tiver instalado.

Independentemente da fonte original do problema, você pode começar de novo com uma nova tabela de partição, se você pode limpar os primeiros 4mb do disco para remover todos os vestígios de qualquer sistema de arquivos ou tabela de partições antes de particionar / formatá-los.

Faça:

dd bs=4096 count=1024 if=/dev/zero of=/dev/sdd

... para começar de novo se quiser limpá-lo.

    
por 01.12.2014 / 23:42
0

Isso pode acontecer porque o FAT (16 e 32) armazena a geometria da partição perto do início do primeiro setor (63 e 90 bytes resp.), enquanto o MBR a armazena perto do fim. Isso torna possível ter ambos escritos de uma só vez. O estágio 1 do GRUB suporta ambos, então ele tem áreas "não usadas" em ambos os lugares. Mas no seu caso, as estruturas são aparentemente cross-linked e escrever para um corromperá o outro! Sugiro que você faça backup dos arquivos, verifique-os, limpe o MBR e crie-o novamente. EDIT: Não é um MBR protetora porque, em seguida, não seria visível como um sistema FAT utilizável. Estaria oculto. Talvez o Windows solicite que você o formate, como é personalizado com unidades removíveis não suportadas.

    
por 21.05.2016 / 08:42

Tags