Eu tenho uma unidade USB externa de 500 GB formatada com uma única partição FAT32. Eu queria uma partição que suportasse as permissões normais do sistema de arquivos Linux, então eu reduzi a partição existente usando o parted:
$ parted /dev/sda
(parted) resizepart 1 220GB
(havia 216GB de dados nele). Parecia que funcionava bem:
(parted) print
Number Start End Size Type File system Flags
1 32.3kB 220GB 220GB primary fat32 lba
Em seguida, criei uma nova partição ext4:
(parted) mkpart primary ext4 220GB 500GB
(parted) print
Number Start End Size Type File system Flags
1 32.3kB 220GB 220GB primary fat32 lba
2 220GB 500GB 280GB primary ext4 lba
Algo não funcionou direito, porque depois de tentar montar a nova partição e receber erros, verifiquei a unidade novamente e vi o seguinte:
(parted) print
Number Start End Size Type File system Flags
1 32.3kB 220GB 220GB primary fat32 lba
2 220GB 500GB 280GB primary
OK, corrija isso:
$ sudo mkfs -t ext4 /dev/sda2
A nova partição em sda2 parece estar funcionando bem. A partição antiga pode ser montada bem e posso ver a estrutura de pastas de nível superior, mas tentar acessar qualquer uma das subpastas com cd
ou ls
gera um erro de entrada / saída e $ dmesg|tail
mostra variações de
FAT-fs (sda1): error, fat_get_cluster: invalid cluster chain (i_pos 0)
A execução de fsck /dev/sda1
dá:
fsck from util-linux 2.25.2
fsck.fat 3.0.27 (2014-11-12)
Seek to 500105216512:Invalid argument
Posso resgatar os dados na partição FAT32? Seria ingênuo pensar que eu poderia apenas redimensionar para 220 GB e não atrapalhar a partição existente?