¿Ubuntu daña las unidades USB?

74

Cada vez que desmonto una unidad USB con Nautilus y la conecto a una máquina con Windows, recibo una advertencia de que la unidad debe repararse.


(el mismo mensaje que en esta captura de pantalla)

Durante más de 10 años trabajando con Windows, nunca tuve una unidad USB corrupta o dañada, pero durante los últimos dos años tres de mis unidades USB dejaron de funcionar, por lo que no puedo probarlo, pero es obvio que esto está relacionado con el comportamiento de (des) montaje de Ubuntu .

Un amigo me dijo que puedo evitar ese daño usando udiscos y sincronización, pero espero que esta no sea la forma de hacerlo, montando unidades con comandos de shell en 2016.

jan6352781
fuente
1
Intentaría dos pruebas para descubrir la causa raíz: 1) ¿Puede evitar que aparezca el error si llama synca un shell antes de desmontar en Ubuntu? (poco probable) 2) Intente escribir solo un archivo a la vez, desmonte, luego verifique si este archivo se puede leer en Windows y su contenido está actualizado, a pesar de ver esta advertencia. 2) significa que el problema es más probable con Windows siendo quisquilloso diciendo "encontramos errores" sobre algún problema no real.
arielf 01 de
2
No le crea a la gente cuando le dicen que Linux no dañará sus unidades. Puede. En Ubuntu 15, la mera copia de archivo seguida de reinicio constantemente me dio errores en chkdsk como este:Stage 2: Examining file name linkage ... Found corrupt basic file structure for "<0x32,0x1e63>" ... queued for offline repair. Found an unneeded link ($FILE_NAME: ???) in index "$I30" of directory "\ <0x5,0x5>" ... queued for offline repair. Found missing Index entry for file "<0x32,0x1e63>" from index "\??\D:\found.000" of directory "$I30" ... queued for offline repair.
Mehrdad
1
^ ... sin mencionar que esto ni siquiera estaba en una unidad flash, estaba en mi SSD principal. Un nuevo SSD. Y sucedió cada vez que no agregué un montón de E / S adicionales después de la copia del archivo. En otras palabras, la implementación de NTFS en Linux está rota, por mucho que sus fanáticos quieran negarlo y evitar creer.
Mehrdad
12
¿Es este un sistema de archivos NTFS? FAT32? ¿Puedes reproducirlo de manera confiable?
Braiam
2
¿Qué tiene de malo montar unidades con comandos de shell ? ¯\(o_o)/¯
ulidtko

Respuestas:

104

No se preocupe, Ubuntu no dañó su unidad USB. Pero no utilizamos banderas de bits mal documentadas de un sistema de archivos FAT32, FAT16 o NTFS. En Windows, estos indicadores indican un sistema de archivos posiblemente dañado cuando no hemos desmontado correctamente la unidad o se ha producido un error de E / S.

Esos bits se encuentran en una entrada reservada de una tabla de particiones FAT. Según un documento interno de Microsoft de 2004, el propósito de estos bits es:

  • ClnShutBitMask:
    Si el bit es 1, el volumen está "limpio". El volumen se puede montar para acceder. Si el bit es 0, el volumen está "sucio", lo que indica que un controlador del sistema de archivos FAT no pudo desmontar el volumen correctamente (durante una operación de montaje anterior). El contenido del volumen debe analizarse en busca de daños en los metadatos del sistema de archivos.
  • HrdErrBitMask:
    Si este bit es 1, no se encontraron errores de lectura / escritura en el disco. Si este bit es 0, la implementación del controlador del sistema de archivos encontró un error de E / S de disco en el volumen la última vez que se montó, lo que es un indicador de que algunos sectores pueden haber fallado. El contenido del volumen debe escanearse con una utilidad de reparación de disco que realiza un análisis de superficie en busca de nuevos sectores defectuosos.

Hubo una discusión con los desarrolladores del sistema de archivos del núcleo hace algunos años sobre cómo superar esto, pero no pude hacer un seguimiento de los resultados. Aparentemente no llegó a los núcleos recientes.

Como solo se trata de un indicador de bits, pero en general nuestros datos deben estar en perfecto estado, podemos ignorar los problemas de advertencia de Windows en las unidades que habíamos utilizado anteriormente en Ubuntu.

Takkat
fuente
3
Nunca he tenido estos errores en estas unidades cuando realmente desmonto las unidades de forma segura: ¿está seguro de que falta el soporte para estos bits?
Thomas Ward
55
@ThomasW. Estos bits son bastante oscuros, pero ocasionalmente tengo estos errores con mis unidades USB formateadas con Ubuntu en mi lugar de trabajo Windows 7. Hasta ahora no he visto ningún patrón útil. Lo único que puedo decir es que siempre desmonto / expulso correctamente las unidades. La prueba no es fácil porque en casa no Windows, en el trabajo no Ubuntu.
Takkat
El titular es falso.
MatthewRock
@MatthewRock: ¿mejor?
Takkat
Si, es mejor.
MatthewRock
74

Esto es principalmente un problema con Windows. Piensa que es el único sistema operativo del mundo y actúa si detecta algo que no comprende.

El hecho de que Windows dice que debe reparar la unidad no lo hace cierto.

Cualquiera de mis unidades utilizadas con Ubuntu recibe este mensaje de Windows, solo digo noque funcionan bien con Windows.

En resumen, no hay nada de malo en la unidad, es solo que hay algo allí que Windows no entiende y su respuesta es destruirla.

No utilice repairla unidad, la formateará sin avisarle y perderá todos los datos de la unidad.

Mark Kirby
fuente
40
1. La reparación no formatea, la reparación guarda los datos asignados a una carpeta. Para mí parece que Ubuntu no termina el proceso de escritura correctamente.
jan6352781
10
2. La mayoría de las unidades USB tienen formato FAT32, que fue desarrollado por Microsoft, entonces, ¿por qué Windows debería ser el único sistema que "no comprende" algo?
jan6352781
17
-1 porque es infundado e incorrecto. He visto a Ubuntu 15 corromper mi volumen NTFS (sí, sé que no me creerán, pero lo he visto con mis propios ojos y lo he reproducido al menos 3-4 veces seguidas antes de creerlo), y ha sucedido incluso a pesar de que explícitamente sincronizo todos los buffers. Estoy de acuerdo con @ jan6352781 que también sospeché que se debía a que no había terminado el proceso de escritura, y aún lo hago. De hecho, si espera lo suficiente después de la escritura antes de reiniciar Ubuntu, funciona bien. No tenemos ninguna razón para creer que Windows tenga la culpa aquí, y todas las razones para creer que Ubuntu lo es.
Mehrdad
77
La reparación de la unidad no la formatea. Se ejecuta chkdsk. No formatea más el disco que fsck formatea un disco.
Journeyman Geek
16
Toda esta respuesta es solo una queja de Windows con cero evidencia (excepto anecdótica).
Millie Smith
18

Como sugirió en un comentario, esto posiblemente esté relacionado con que Ubuntu no complete el proceso de escritura antes de quitar la unidad flash. Ubuntu escribe los archivos en la RAM durante el proceso de copia, y los escribe desde el búfer en la unidad USB en segundo plano después de que se cierra el cuadro de diálogo de copia. Hay otra respuestaeso sugiere que esto es especialmente un problema para máquinas con grandes cantidades de memoria, pero es probable que esté retirando la unidad antes de que se complete la escritura en segundo plano. Cuando expulsa una unidad, esto obliga a que el búfer se escriba en el disco, pero es difícil saber cuándo se ha completado realmente la escritura. Hay una ventana emergente en las versiones más recientes (15.10 para ciertos, posiblemente 15.04) destinadas a remediar esto: aparece una alerta púrpura después de un tiempo (generalmente corto) que dice algo como "[Drive] ahora se puede quitar" una vez La escritura está terminada.

Esta es probablemente la razón por la que su amigo sugirió la sincronización. La ejecución syncen la terminal obliga a que todos los datos almacenados en el búfer se escriban en el disco, y solo deben volver una vez que se completen las escrituras (consulte esta respuesta ). Consulte esta respuesta para obtener una utilidad que lo ayudará a determinar si este es realmente el problema.

alex_d
fuente
Obtengo la ventana emergente en 14.04 (edición Linux Mint KDE) cada vez que expulso una unidad USB, y también mis máquinas Kubuntu 15.10. No estoy seguro acerca de 15.04, pero supongo que sí.
Jon Bentley
1
¿La GUI realmente no lo hace obvio? Lo he estado usando ejecten la terminal durante mucho tiempo, y hay un retraso notable antes de que regrese si acabo de copiar un archivo grande.
Izkata
1
@Izkata En Ubuntu vainilla 14.04, cuando haces clic en el símbolo de expulsión en Nautilus, desaparece inmediatamente. Sin embargo, a diferencia de las unidades internas, las unidades USB desaparecen por completo de la barra lateral cuando se desmontan por completo (es decir, la escritura ha finalizado), por lo que hay un período de tiempo durante el cual la unidad USB se escribe pero parece expulsarse.
alex_d
5

He visto muchas unidades USB, especialmente tarjetas flash (SD, etc.) en adaptadores USB, con sistemas de archivos FAT (prácticamente todas las unidades USB preformateadas con FAT32) se corrompen al usar distribuciones derivadas de Ubuntu y Ubuntu. Era casi una ocurrencia regular cada pocos meses de uso diario regular.

Si se tratara de un problema de hardware, formatear las particiones con ext3 (o 4) no debería ayudar, pero ext3 / 4 hace que los sistemas de archivos sean prácticamente a prueba de balas. (ext2 también se corrompió durante los pocos meses que lo probé; se suponía que tenía menos escrituras, por lo que una vida útil más larga para las unidades flash, principalmente de ningún diario).

Entonces, Ubuntu no debería dañar físicamente las unidades USB, pero todavía no confío en él al 100% con los sistemas de archivos FAT.

Creo que la corrupción del sistema de archivos se puede evitar mejor si:

  • Nunca desconecte simplemente una unidad USB hasta que se haya desmontado / umount/ expulsado. Incluso si la unidad no está escribiendo actualmente nada (si tiene una luz no está parpadeando) e incluso si ha hecho un syncsistema de archivos aún puede
  • Espere al menos unos segundos después de umount/ expulsar antes de desenchufarlo. Parece que incluso después de que umountla luz de actividad del disco a veces puede seguir parpadeando por un tiempo. Otros usuarios como este tipo dicen que podría durar hasta un minuto.
  • No confíes solo en syncninguno de los dos, como este tipo que sufrió corrupción de archivos.

Enlaces relacionados (generalmente):

Xen2050
fuente
3

Esto tiene poco que ver con cualquier sistema operativo. Este es un error del sistema de archivos, que en la mayoría de los casos indica que la unidad no se desmontó correctamente (error del usuario). No es una indicación absoluta de daño, simplemente indica la posibilidad de un daño. Si está presente, el daño generalmente se limita a los últimos archivos escritos. El comando "Reparar" de Windows en este caso escanea la unidad en busca de sectores marcados como "ocupados", pero no asignados a ningún archivo y luego asigna estos fragmentos y piezas a nuevos archivos.

Este error también se puede crear en Windows, si simplemente retira la unidad durante la escritura sin desmontarla primero (en Windows "Expulsar" realiza el desmontaje).

Ver este mensaje significa que la unidad no se desmontó correctamente.

Puede verificar por su cuenta si el sistema de archivos estaba realmente dañado o si es falso positivo: si después de ejecutar "Reparar" aparece una nueva carpeta llamada "found000" con algunos archivos, significa que realmente hubo una escritura inacabada que fue interrumpido Se perdieron algunos de sus datos, y eso es una preocupación.

Agent_L
fuente
2

Utilizo varios años ubuntu y windows con arranque dual, y cuando desmonto la unidad de la manera correcta, en windows siempre aparece el mensaje de error, pero nunca fue un error en mi unidad usb. En W10 puede desactivar este mensaje de error emergente.

ingrese la descripción de la imagen aquí

tviragh
fuente
1

Casi no hay forma de que ningún sistema operativo pueda dañar la unidad USB, después de un formato normal (no el rápido), no debería quedar rastro de que la unidad se usó alguna vez con Ubuntu.

Compruebe las unidades con "H2testw" o "USB Flash Drive Tester": los sectores defectuosos pueden ser fuente de muchos errores extraños.

usuario158037
fuente
44
El OP está mal redactado, pero significa "sistema de archivos", no "ROM flash".
wizzwizz4 01 de
Parece que el OP puede significar un daño real en la unidad USB , dicen: "Nunca tuve una unidad USB dañada o dañada, pero durante los últimos dos años tres de mis unidades USB dejaron de funcionar " . en lugar de "inoperante" @ wizzwizz4
Xen2050
3
@ Xen2050 Sin embargo, todas las otras respuestas, y los hilos de comentarios, incluido jan6352781, implican o afirman que el sistema de archivos es el problema y el "dispositivo roto" es una extrapolación de ellos que no funcionan correctamente.
wizzwizz4
@ wizzwizz4 Bueno, en la respuesta de Mark Kirby, el OP comenta "3. Los últimos años me salteé la reparación casi todos los días y terminé con archivos dañados y unidades USB ". Supongo que es solo de unidades viejas que habrían fallado, Windows o no, pero OP todavía lo dijeron
Xen2050
@ Xen2050 O tal vez el OP se refería al antiguo mensaje "El dispositivo está dañado. ¿Desea que Windows lo repare?" (parafraseado) que a veces aparece cuando un dll diferente maneja el problema. (Me lo he hecho aparecer, aunque no estoy seguro de que la última oración sea la correcta)
Wizzwizz4
1

No puedo decir si la unidad estaba "dañada", tal vez sí y tal vez no. Pero como alguien que puede decir lo mismo: "Durante más de 10 años trabajando con Windows ...", puedo decirle que si está ejecutando Windows 10 podría ser la fuente de sus nuevos problemas. Me encontré con un nuevo problema mi primer día el 10: en 10 se crea una base de datos para unidades externas (podría ser la base de datos de indexación, no recuerdo). Si esa base de datos no coincide con la unidad, le dirá que su unidad está dañada, a veces puede ignorar esta advertencia y otras no (ver anécdota). Ejecutar "reparar" arreglará la base de datos.

Anécdota:

No recuerdo dónde encontré esta información, pero me enteré cuando moví mi carpeta Música. Se quejó de que la unidad estaba rota en lugar de quejarse de que la carpeta que buscaba ya no existía. Antes de ejecutar la reparación, la nueva ubicación apareció en Ubuntu y la ubicación anterior en Windows 10 ... pero no se pudieron abrir todos los archivos el 10. Después de ejecutar la reparación, la nueva ubicación de la carpeta Música apareció en Windows, la carpeta antigua desapareció y funcionó en Windows nuevamente.

Correr synctampoco es una mala idea.

Negro
fuente