consulta sobre pendrive o discos usb. posibles fallos.

Iniciado por murdokeing, 23 Noviembre 2017, 02:01 AM

0 Miembros y 1 Visitante están viendo este tema.

murdokeing

Buenas a todos, hace un par de días, tuve un problema con un disco externo usb de 3tb, linux mint lo leía sin problemas, respaldé mis datos y formateo el notebook, para instalar linuxmint 18.2 todo bien hasta el momento de conectar el disco.... sorpresa, error de entrada/salida, probé montar por consola y nada, de nuevo el error, tuve que iniciar en windows, colocar disco y lo mismo, el disco presentaba errores y no se podía leer el contenido, bueno de ahí lo clásico chkdsk -f y problema solucionado, (menos mal, por que no había respaldado en otro disco).

Bueno, volví a linux y a vaciar todo al note.  Hasta aquí todo bien, excepto por el disco externo, en una conversación con otro amigo linuxnero, usuario y fanático de Elementary, me comentó de que él ha notado que varios pendrives que usa en su distribución, empiezan a presentar fallos, debiendo usar chkdsk para reparar, también nos percatamos, en ambas distribuciones, de que el disco queda con la luz encendida después de desmontar, así que nos quedamos haciendo preguntas sobre si este tipo de fallos se debería a linux.

Alguno de ustedes a notado esto?

¿será posible, que linux no esté manejando adecuadamente los dispositivos con particiones de windows sea ntfs o fat32?

de ser así...

¿debemos usar particiones nativas de linux como ext3 o ext4? y llevar con nosotros en un pendrive algún software para que windows reconozca las particiones ext.?

o tal vez, ¿sean solo conjeturas sin sentido de parte de un par de usuarios de linux???

de antemano, muchas gracias por sus respuestas.

Slava_TZD

Probablemente tu problema está relacionado con:

man mount
async  All I/O to the filesystem should be done asynchronously.  (See also the sync option.)
sync   All I/O to the filesystem should be done synchronously.  In the case of media with a limited number of write cycles (e.g. some flash drives), sync may cause life-cycle shortening.

man sync
sync - Synchronize cached writes to persistent storage


Desde un terminal ejecuta sync antes de desmontar tu disco o usa la opción sync al montarlo y sufre sus consecuencias. Por defecto debería estar utilizando async, que hace que las operaciones sean asíncronas lo cual te puede llevar a engaño porque aunque cp dd o lo que sea diga que ha terminado de escribir no significa que tus datos están escritos en disco.

Saludos


The fact is, even if you were to stop bombing us, imprisoning us, torturing us, vilifying us, and usurping our lands, we would continue to hate you because our primary reason for hating you will not cease to exist until you embrace Islam.

murdokeing

Cita de: Slava_TZD en 23 Noviembre 2017, 14:30 PM
Probablemente tu problema está relacionado con:

man mount
async  All I/O to the filesystem should be done asynchronously.  (See also the sync option.)
sync   All I/O to the filesystem should be done synchronously.  In the case of media with a limited number of write cycles (e.g. some flash drives), sync may cause life-cycle shortening.

man sync
sync - Synchronize cached writes to persistent storage


Desde un terminal ejecuta sync antes de desmontar tu disco o usa la opción sync al montarlo y sufre sus consecuencias. Por defecto debería estar utilizando async, que hace que las operaciones sean asíncronas lo cual te puede llevar a engaño porque aunque cp dd o lo que sea diga que ha terminado de escribir no significa que tus datos están escritos en disco.

Saludos

Gracias, por la respuesta, investigué un poco más, y al parecer este es un problema viejo y que aun persiste, usar sync sobre todo en archivos grandes, es una verdadera tortura, sin embargo me encontré con algo menos doloroso.

Es usar el comando udisksctl, en la terminal debemos escribir:

primero desmontar el dispositivo:

udisksctl unmount -b /dev/sda1 (donde sda1 es el nombre del dispositivo a desmontar)

Segundo, para asegurarse que los datos se hayan transferido hasta el final, igualmente tienen que esperar, sin embargo esto va a desconectar completamente el pendrive una vez que los datos hayan terminado de copiarse.

udisksctl power-off -b /dev/sda (donde sda es el nombre del dispositivo a desmontar)

de esta manera nos aseguramos de evitar posibles daños a los pendrives o discos duros externos.

Gracias Slava_TDZ por tu comentario.

Slava_TZD

#3
La solución mas sencilla es la que te comenté, ejecutar sync antes de desmontar el disco utilizando una gui o la terminal. Con esos comandos lo único que haces es desmontar la unidad utilizando udisks y 'cortar' la alimentación. En teoría hace un sync antes de quitarle la alimentación, pero no entiendo porque quieres complicarte con udiskctl...


The fact is, even if you were to stop bombing us, imprisoning us, torturing us, vilifying us, and usurping our lands, we would continue to hate you because our primary reason for hating you will not cease to exist until you embrace Islam.