O Ubuntu danifica as unidades USB?

73

Sempre que desmonto uma unidade USB com o Nautilus e a conecto a uma máquina Windows, recebo um aviso de que a unidade precisa ser reparada.


(a mesma mensagem como nesta captura de tela)

Por mais de 10 anos trabalhando com windows eu nunca tive um drive USB corrompido ou danificado mas durante os últimos dois anos três dos meus drives USB ficaram inoperantes, então eu não posso provar isso, mas é óbvio que isso está relacionado ao Ubuntu (un ) comportamento de montagem.

Um amigo me disse que eu posso evitar esse tipo de dano usando os udisks e a sincronização, mas espero que essa não seja a maneira de fazer isso, montando unidades com comandos de shell em 2016.

    
por jan6352781 01.04.2016 / 11:54

8 respostas

102

Não se preocupe o Ubuntu não danificou o seu drive USB. Mas nós não usamos sinalizadores de bits mal documentados de um sistema de arquivos FAT32, FAT16 ou NTFS. No Windows, esses sinalizadores indicam um sistema de arquivos possivelmente corrompido quando não desmontamos a unidade corretamente ou ocorreu um erro de E / S.

Esses bits estão localizados em uma entrada reservada de uma tabela de partição FAT. De acordo com um documento interno da Microsoft de 2004 desses bits são:

  
  • ClnShutBitMask :
      Se o bit é 1, o volume está “limpo”. O volume pode ser montado para   Acesso. Se bit é 0, o volume está “sujo” indicando que um arquivo FAT   o driver do sistema não conseguiu desmontar o volume adequadamente (durante   operação de montagem anterior). O conteúdo do volume deve ser escaneado   qualquer dano aos metadados do sistema de arquivos.
  •   
  • HrdErrBitMask :
      Se este bit for 1, nenhum erro de leitura / gravação de disco foi encontrado.   Se este bit for 0, a implementação do driver do sistema de arquivos encontrou   erro de E / S de disco no volume da última vez em que foi montado, o que é   indicador de que alguns setores podem ter ido mal. O volume   conteúdo deve ser digitalizado com um utilitário de reparo de disco que   análise de superfície sobre ele procurando por novos setores defeituosos.
  •   

Houve alguma discussão com os desenvolvedores do sistema de arquivos do kernel há alguns anos sobre como superar isso, mas não consegui acompanhar os resultados. Aparentemente, ele não entrou nos kernels recentes.

Como apenas um sinalizador de bit está envolvido, mas geralmente nossos dados devem estar em perfeita forma, podemos ignorar os problemas de aviso do Windows nas unidades que usamos anteriormente no Ubuntu.

    
por Takkat 01.04.2016 / 16:38
72

Isso é principalmente um problema com o Windows. Ele pensa que é o único sistema operacional no mundo e age se detecta algo que não entende.

Só porque o Windows diz que você deve reparar a unidade não é verdade.

Qualquer uma das minhas unidades usadas com o Ubuntu recebe essa mensagem do Windows, eu apenas digo no e elas funcionam bem com o Windows.

Em suma, não há nada errado com a unidade, é apenas há algo lá que o Windows não entende e sua resposta é destruí-lo.

Não repair da unidade, ela será formatada sem informar e você perderá todos os dados da unidade.

    
por Mark Kirby 01.04.2016 / 11:59
16

Como você sugeriu em um comentário, isso possivelmente está relacionado ao Ubuntu não ter completado o processo de gravação antes de remover o flash drive. O Ubuntu grava os arquivos na RAM durante o processo de cópia e grava esses arquivos do buffer na unidade USB em segundo plano depois que a caixa de diálogo de cópia é fechada. Há outra resposta que sugere que isso é especialmente um problema para máquinas com grande quantidade de memória, mas é provável que você esteja removendo a unidade antes que a gravação em segundo plano seja concluída. Quando você ejeta uma unidade, isso força o buffer a ser gravado no disco, mas é difícil dizer quando a gravação está realmente concluída. Há um pop-up em versões mais recentes (15.10 para determinados, possivelmente 15.04) destinados a remediar isso - um alerta roxo aparece depois de algum tempo (geralmente curto) que diz algo como "[Drive] agora pode ser removido" a gravação está terminada.

Esta é provavelmente a razão pela qual seu amigo sugeriu a sincronização. Executar sync no terminal força todos os dados armazenados em buffer a serem gravados no disco e deve retornar apenas quando as gravações forem concluídas (Consulte esta resposta ). Veja esta resposta para um utilitário que irá ajudá-lo a determinar se isso é na verdade o problema.

    
por alex_d 01.04.2016 / 15:09
5

Eu já vi vários drives USB, especialmente cartões flash (SD, etc) em adaptadores USB, com sistemas de arquivos FAT (praticamente todos os drives USB vêm pré-formatados com FAT32) corrompidos durante o uso do Ubuntu & amp; Distribuições derivadas do Ubuntu. Era quase uma ocorrência regular a cada poucos meses de uso diário regular.

Se fosse um problema de hardware, a formatação das partições com ext3 (ou 4) não deveria ajudar, mas o ext3 / 4 torna os sistemas de arquivos praticamente à prova de balas. (Ext2 também foi corrompido ao longo dos poucos meses que eu tentei; era suposto ter menos gravações para uma vida mais longa para drives flash, principalmente a partir de nenhum jornal).

Assim, o Ubuntu não deve danificar fisicamente as unidades USB, mas eu ainda não confio 100% com sistemas de arquivos FAT.

Eu acho que a corrupção do sistema de arquivos pode ser melhor evitada por:

  • Nunca desconecte uma unidade USB até que ela tenha sido desmontada / umount / ejected. Mesmo que a unidade não esteja atualmente escrevendo nada (se tiver uma luz, ela não está piscando) e, mesmo que você tenha feito um sync , o sistema de arquivos ainda pode
  • Aguarde pelo menos alguns segundos após o umount / ejectar antes de desconectá-lo. Parece que, mesmo depois de umount , a luz de atividade da unidade pode, às vezes, continuar piscando por algum tempo. Outros usuários como esse cara dizem que pode continuar a um minuto.
  • Não confie apenas em sync , como esse cara que sofreu corrupção de arquivos.

Links relacionados (geralmente):

por Xen2050 02.04.2016 / 18:45
2

Isso tem pouco a ver com qualquer sistema operacional. Este é um erro do sistema de arquivos, que na maioria dos casos indica que a unidade não foi desmontada corretamente (erro do usuário). Não é uma indicação absoluta de dano, apenas indica uma possibilidade de um dano. Se presente, o dano é geralmente limitado ao último arquivo (s) escrito (s). Nesse caso, o comando "Reparar" do Windows verifica a unidade em busca de setores marcados como "ocupados", mas não atribui a nenhum arquivo e, em seguida, atribui esses recortes e peças a novos arquivos.

Esse erro também pode ser criado no Windows, se você simplesmente arrancar a unidade durante a gravação sem desmontá-la primeiro (no Windows, "Ejectar" executa a desmontagem).

Ver esta mensagem significa que a unidade não foi desmontada corretamente.

Você pode verificar por si mesmo se o sistema de arquivos foi realmente danificado ou é apenas falso positivo: se depois de executar "Reparar" aparecer uma nova pasta chamada "found000" com alguns arquivos, significa que realmente houve um Escrita inacabada que foi interrompida. Alguns dos seus dados foram perdidos e isso é uma preocupação.

    
por Agent_L 04.04.2016 / 16:07
1

Não há quase nenhuma maneira de qualquer sistema operacional danificar a unidade USB, depois de um formato normal (não o rápido), não deve haver vestígios de que a unidade tenha sido usada com o Ubuntu.

Verifique as unidades com "H2testw" ou "USB Flash Drive Tester" - setores defeituosos podem ser fonte de muitos erros estranhos.

    
por user158037 01.04.2016 / 15:55
1

Eu uso varios anos ubuntu e windows com dual-boot, e quando eu desmonto a drive da maneira correta, no windows sempre aparece a mensagem de erro, mas nunca foi erro na minha unidade usb. No W10, você pode desativar essa mensagem de erro pop-up.

    
por tviragh 05.04.2016 / 11:53
0

Eu não posso dizer se a unidade estava "danificada", talvez fosse e talvez não fosse. Mas, como alguém que pode dizer o mesmo: "Por mais de 10 anos trabalhando com o Windows ...", posso dizer que, se você estiver executando o Windows 10, isso pode ser a origem de seus novos problemas. Eu corri para um novo problema no meu primeiro dia em 10: em 10 um banco de dados é criado para unidades externas (pode ser o banco de dados de indexação, não me lembro). Se esse banco de dados não corresponder à unidade, ele informará que sua unidade está danificada. Às vezes, você pode ignorar esse aviso e, às vezes, não é possível (veja a anedota). A execução do "reparo" consertará o banco de dados.

Anedota:

  

Não me lembro de onde encontrei essa informação, mas descobri quando movi minha pasta Música. Ele reclamou que a unidade estava quebrada em vez de apenas reclamar sobre a pasta que estava procurando não existir mais. Antes eu corri reparar o novo local apareceu no Ubuntu e no local antigo no Windows 10 ... mas todos os arquivos não puderam ser abertos em 10. Depois que eu corri reparar o novo local da pasta Música apareceu no Windows, a pasta antiga desapareceu e funcionou no Windows novamente.

A execução de sync também não é uma má ideia.

    
por Black 06.04.2016 / 11:17