Arquivos desaparecidos após remontar a partição NTFS. Por quê?

2

Eu estava tentando fazer login no meu Ubuntu 14.04, mas depois de digitar a senha, não consegui ver nenhum ícone ou traço. Eu já havia enfrentado esse problema antes e também conhecia a solução.
O problema era que minha partição Ubuntu estava quase cheia.

Eu planejei mover os enormes arquivos baixados para minha partição do Windows. Entrei no terminal Alt + Desloc + F1 e montei minha unidade do Windows em /mnt .

Em seguida, movi arquivos usando mv para minha unidade montada.
Os arquivos foram movidos com sucesso (confirmei isso com ls ).
Desmontar a unidade e reiniciar o sistema e o que encontrei?
Os arquivos foram desaparecidos.

Só assim. O que pode ser a razão? Eu também tentei recuperar os arquivos, mas sem sucesso até agora!

EDITAR: Eu consegui recuperar alguns dos arquivos (não todos). Os arquivos apareceram no explorador assim que eu executei chkdsk na unidade afetada.

Alguns arquivos foram corrompidos (os clusters podem ter sido sobrescritos).

    
por CyberGeek 18.09.2015 / 21:15

1 resposta

0

Apenas uma dica: um problema sync

The kernel keeps data in memory to avoid doing (relatively slow) disk reads and writes. This improves performance, but if the computer crashes, data may be lost or the file system corrupted as a result.

The 'sync' command ensures everything in memory is written to disk.

No seu caso, provavelmente você desligue o computador antes que ele termine de copiar fisicamente os arquivos.
Infelizmente, a resposta simples de ls não é suficiente para garantir que o kernel termine de liberá-las.

Além disso, se o seu disco rígido estiver completamente cheio, alguma parte dos arquivos ainda deve estar apenas na memória; assim, após a reinicialização do sistema, não há como extraí-los novamente do ram .

Na próxima vez, você pode tentar evitar esse problema, fornecendo um comando sync antes de desligar e aguardar seu status de saída:

mv  From_Here To_There 
sync && echo " ### DONE : sync finish to work ##"

Referência

  • info coreutils 'sync invocation' você pode ler mais

    'sync' writes any data buffered in memory out to disk. This can include (but is not limited to) modified superblocks, modified inodes, and delayed reads and writes. This must be implemented by the kernel; the 'sync' program does nothing but exercise the 'sync' system call.

Nota

Quando você desmonta a partição, a sincronização é dada pelo sistema, mas é necessário esperar que o processo de desmontagem seja concluído corretamente. Se não, você deve ter o problema que encontrar.

    
por 22.09.2015 / 19:05