De repente comencé a recibir errores al copiar archivos a mi disco duro externo. Hay mucho espacio libre: 1,64 TB libres de 3,63 TB. Pude completar la copia del archivo haciendo una de dos cosas:
- Primero, eliminar algunos archivos grandes del disco duro externo
- O colocar el disco duro en una caja USB diferente
Además, la herramienta de comprobación de errores de Windows 8 falla con un error a menos que se utilice una carcasa USB diferente (eliminar archivos grandes no ayuda en este caso). La herramienta de línea de comandos CHKDSK siempre funciona y no informa errores en el disco.
¿Cómo puedo confirmar que el problema fue la carcasa del disco duro USB?(Me gustaría confirmar que el problema fuenocon mi disco duro y es seguro continuar usándolo).¿Y cómo puedo determinar la capacidad que admite una caja de disco duro USB?
información detallada:
El error al copiar un archivo grande:
- El código 0x80070057 parece ser un código bastante genérico.
- Inmediatamente después de recibir este error, copié con éxito un archivo de 2 GB. Intenté copiar el mismo archivo nuevamente (para un total de 4 TB) y obtuve el mismo error.
- En los registros de eventos del sistema, esto parece registrarse cada vez que falla una copia: "Las instantáneas del volumen D: fueron abortadas debido a una falla de IO en el volumen D:".
Error de la herramienta de comprobación de errores de Windows 8:
- Después de fallar, abre el visor de eventos de Windows con algún error relacionado con la instantánea del volumen. (Olvidé registrar los detalles sobre este)
Hardware:
- Enermaxjazz 3.5Caja de disco duro USB (ésta causa errores; es un modelo bastante antiguo).
- letoCLÓN DE DATOS3.0Base USB HDD (ésta parece no tener errores; modelo mucho más reciente).
- Disco duro Western Digital 4TB VERDEWD40EZRX
Sistema de archivos:
- GPT (la unidad MBR de 2 TB se clonó en una unidad de 4 TB y luego la tabla de particiones se convirtió a GPT)
- NTFS
Sistema:
- ventana 8
- Portátil Lenovo X1 Carbon
actualizar:Más detalles del evento registrado "Las instantáneas del volumen D: fueron abortadas..."
Sistema - Proveedor [Nombre] volsnap - ID de evento 14 [Clasificatorios] 49158 Nivel 2 Tarea 0 Palabras clave 0x80000000000000 - Hora de creación [Hora del sistema] 2015-01-24T21:23:54.296013300Z ID de registro de evento 1063256374 Sistema de canales Computadora X1-Carbono Seguridad - Datos de evento \Dispositivo\HarddiskVolumeShadowCopy6 D: D: 0000000003003000000000000E0006C00A0000000D0000C00200000000000000000000000000000000000
actualización 2:
Error al montar la unidad de 4TB en Ubuntu con el dock que funciona desde Windows:
Error al montar /dev/sdc1 en /media/daniel/DeskStar: Línea de comando `mount -t "ntfs" -o "uhelper=udisks2,nodev,nosuid,uid=1000,gid=1000,dmask=0077,fmask=0177 " "/dev/sdc1" "/media/daniel/DeskStar"' salió con un estado de salida distinto de cero 13: ntfs_attr_pread_i: ntfs_pread falló: error de entrada/salida No se pudo leer NTFS $Bitmap: error de entrada/salida NTFS es inconsistente, hay una falla de hardware o es un Hardware SoftRAID/FakeRAID. En el primer caso ejecute chkdsk /f en Windows luego reinicie Windows dos veces. El uso del parámetro /f es muy ¡importante! Si el dispositivo es SoftRAID/FakeRAID, primero actívelo y monte un dispositivo diferente en el directorio /dev/mapper/ (p. ej. /dev/mapper/nvidia_eahaabcc1). Consulte la documentación 'dmraid' para más detalles.
La unidad no aparece en fdisk -l
, así que no puedo intentarlo dd
... Intenté volver a conectarme a Windows: no hay problema; La herramienta de comprobación de errores de propiedades del disco de Windows no informa errores.
También:
Intenté usarlo dd
en el gabinete (¿problema?) con undiferenteDisco duro de 2TB:
- Sin errores de lectura
skip=0
- Sin errores de lectura
skip=SOMEWHERE_NEAR_MIDDLE_OF_DRIVE
- Errores al leer sectores al final o cerca del final de la unidad:
daniel@computadora:~$ sudo dd bs=512 if=/dev/sdb1 of=test skip=3907026942 count=1 dd: '/dev/sdb1': no se puede omitir: argumento no válido 0+0 registros en 0+0 registros eliminados 0 bytes (0 B) copiados, 0,000210598 s, 0,0 kB/s
Respuesta1
Si se trata de la unidad USB y está relacionado con el tamaño, entonces la unidad USB no puede procesar correctamente una solicitud de escritura de sector (y probablemente también de lectura). El tamaño del archivo no importa. La causa es que el archivo más grande tiene "piezas" que sobrepasan el límite direccionable.
Debido a la fragmentación del disco, es difícil confirmar o negar esta hipótesis, pero puedes intentarlo con cualquier herramienta que muestre el mapa de fragmentación del disco. Esto debería mostrar un disco grande con el comienzo que se está llenando, ynadapasado cierto punto. No al final, especialmente.
En un disco FAT32, puede intentar llenar el disco con archivos pequeños, cada uno de 8 Kb de tamaño, hasta que se llene el área "alcanzable" y no se pueda escribir en el disco. Pero el disco es NTFS y, sin embargo, el método no es muy preciso ni seguro.
Si es posible, montaría el disco en una distribución en vivo de Linux. En ese momento podrías intentar leer el disco un sector a la vez:
fdisk -l
le dirá cuántos bloques de 512 bytes hay en el disco externo. Entonces
dd bs=512 if=/dev/sdc of=test skip=NNNNN count=1
solicitará una lectura del sector NNNNN (basado en uno :-)).
Si se trata de un límite a NNNNN, observarás que:
N=1 it works
N=MAX_NUM it fails
N=MAX_NUM/2 it fails
...
para que puedas empezar con un clásicoalgoritmo de biseccióny determine dónde se encuentra el sector crítico "C" (cualquier sector anterior a C es legible, cualquiera posterior no lo es). Si existe tal sector, entonces tienes un daño de hardware increíblemente extraño o la prueba que estabas buscando de la culpabilidad del gabinete.
Actualización: encontrar el límite mediante la bisección: un ejemplo
Entonces digamos que el disco es de 4 TB, es decir, 8.000.000.000 de sectores. Sabemos que el sector 1 es legible y el sector 8 mil millones no lo es. Sea READABLE 1, sea ILEGIBLE 8. Entonces el algoritmo es:
let TESTING be (READABLE + UNREADABLE)/2
if sector TESTING is readable then READABLE becomes equal to TESTING
else, UNREADABLE becomes equal to TESTING.
Lather, rinse, repeat with the new values of (UN)READABLE.
When two consecutive values of TESTING are obtained, that's your boundary.
Imaginemos que el límite está en el sector 3.141.592.653 debido a algún error extraño en el recinto.
first pass: testing = (1 + 8000000000)/2 = 4000000000.
4,000,000,000 is unreadable, so replace 8,000,000,000 with 4,000,000,000
second pass: testing (1 + 4M)/2 = 2M
sector 2M is readable, so replace 1 with 2,000,000,000
third pass: testing (2M + 4M)/2 = 3M
sector 3,000,000,000 is readable
fourth pass: testing (3M + 4M)/2 = 3,500,000,000 which is UNREADABLE
fifth: (3 + 3.5) / 2 = 3,250,000,000 UNREADABLE
...
Así, LEGIBLE e ILEGIBLE acechan cada vez más de cerca la frontera desconocida, desde ambas direcciones. Cuando estén lo suficientemente cerca, puedes incluso ir y probar todos los sectores intermedios.
Para localizar el límite, solo es necesario leer log2(max - min) = log2(4TB - 0) = log2(4TB) = log2(2 40 ) = 40 (en realidad, creo que quizás 42) sectores. Dado un retraso de reinicio de 30" en el gabinete cuando ocurre un error de lectura, debería ser de 20 minutos como máximo; probablemente mucho menos.
Una vez que tengas el límite B, para confirmarloesun límite, puede realizar una lectura secuencial de fragmentos grandes antes de B (esto no llevará mucho tiempo), tal vez un megabyte por cada gigabyte más o menos; y luego un muestreo aleatorio de sectores más allá de B. Por ejemplo, los primeros 4*63 sectores más allá del límite, luego un sector cada 3905 (o cada RAND(4000, 4100)) para tratar de evitar golpear siempre el mismo plato magnético.
Pero en realidad, si encuentras un comportamiento similar a un límite y lo confirmas con otro recintono existe tal límite-- bueno, yo declararía el caso cerrado.
Respuesta2
Bien, creo que lo descubrí:
- Examine el
dmesg
registro para verificar la memoria direccionable admitida por el dispositivo USB. - Linux parece impedir el uso de un disco duro si excede la memoria direccionable de un dispositivo USB. (Con varios errores).
- Windows permite el uso de un disco duro incluso si excede la memoria direccionable de un dispositivo USB. (Hasta que se alcance el límite de direcciones). (Entonces el problema era... ¿Windows?)
La misma unidad, diferentes gabinetes da como resultado dos capacidades reportadas diferentes:
7814037168 512-byte logical blocks: (4.00 TB/3.63 TiB)
3519069872 512-byte logical blocks:(1.80 TB/1.63 TiB)
Todos los detalles:
1. dmesg
al conectar una base "moderna" con una unidad de 4 TB:
[93507.922275] usb 1-1.2: nuevo dispositivo USB de alta velocidad número 17 que usa ehci-pci [93508.087948] usb 1-1.2: Se encontró un nuevo dispositivo USB, idVendor=067b, idProduct=2773 [93508.087959] usb 1-1.2: Nuevas cadenas de dispositivos USB: Fabricante=1, Producto=2, Número de serie=3 [93508.087964] usb 1-1.2: Producto: Controlador de puente ATAPI-6 [93508.087969] usb 1-1.2: Fabricante: Prolific Technology Inc. [93508.087973] usb 1-1.2: Número de serie: 0123456789000000110 [93508.088621] almacenamiento-usb 1-1.2:1.0: Dispositivo de almacenamiento masivo USB detectado [93508.089092] scsi24: almacenamiento USB 1-1.2:1.0 [93509.087318] scsi 24:0:0:0: Puente ATAPI-6 prolífico de acceso directo C MPAO PQ: 0 ANSI: 0 [93509.087836] sd 24:0:0:0: SCSI genérico sg2 tipo 0 adjunto [93509.088684] sd 24:0:0:0: [sdb] Dispositivo muy grande. Intentando utilizar LEER CAPACIDAD (16). [93509.089837] sd 24:0:0:0: [sdb] 7814037168 bloques lógicos de 512 bytes: (4,00 TB/3,63 TiB) [93509.090945] sd 24:0:0:0: [sdb] La protección contra escritura está desactivada [93509.090958] sd 24:0:0:0: [sdb] Sentido de modo: 03 00 00 00 [93509.092819] sd 24:0:0:0: [sdb] No se encontró ninguna página del modo de almacenamiento en caché [93509.092832] sd 24:0:0:0: [sdb] Asumiendo caché de unidad: escritura [93509.094321] sd 24:0:0:0: [sdb] Dispositivo muy grande. Intentando utilizar LEER CAPACIDAD (16). [93509.100539] sd 24:0:0:0: [sdb] No se encontró ninguna página del modo de almacenamiento en caché [93509.100545] sd 24:0:0:0: [sdb] Asumiendo caché de unidad: escritura [93509.170090] sdb: sdb1 [93509.171931] sd 24:0:0:0: [sdb] Dispositivo muy grande. Intentando utilizar LEER CAPACIDAD (16). [93509.176059] sd 24:0:0:0: [sdb] No se encontró ninguna página del modo de almacenamiento en caché [93509.176078] sd 24:0:0:0: [sdb] Asumiendo caché de unidad: escritura [93509.176086] sd 24:0:0:0: [sdb] Disco SCSI adjunto
2. dmesg
al conectar un gabinete antiguo con una unidad de 4 TB:
[89939.561869] usb 1-1.2: nuevo dispositivo USB de alta velocidad número 14 que usa ehci-pci [89939.656581] usb 1-1.2: Se encontró un nuevo dispositivo USB, idVendor=152d, idProduct=2338 [89939.656592] usb 1-1.2: Nuevas cadenas de dispositivos USB: Fabricante=1, Producto=2, Número de serie=5 [89939.656598] usb 1-1.2: Producto: Puente USB a ATA/ATAPI [89939.656602] usb 1-1.2: Fabricante: JMicron [89939.656606] usb 1-1.2: Número de serie: 0613316A1498 [89939.658334] almacenamiento-usb 1-1.2:1.0: Dispositivo de almacenamiento masivo USB detectado [89939.658805] scsi20: almacenamiento USB 1-1.2:1.0 [89940.659147] scsi 20:0:0:0: HGST HMS de acceso directo 5C4040ALE640 A580 PQ: 0 ANSI: 2 CCS [89940.659959] sd 20:0:0:0: SCSI genérico sg2 tipo 0 adjunto [89940.661373] sd 20:0:0:0: [sdb] 3519069872 bloques lógicos de 512 bytes: (1,80 TB/1,63 TiB) [89940.662410] sd 20:0:0:0: [sdb] La protección contra escritura está desactivada [89940.662424] sd 20:0:0:0: [sdb] Sentido de modo: 00 38 00 00 [89940.663438] sd 20:0:0:0: [sdb] Error al solicitar datos de caché [89940.663446] sd 20:0:0:0: [sdb] Asumiendo caché de unidad: escritura [89940.667752] sd 20:0:0:0: [sdb] Error al solicitar datos de caché [89940.667761] sd 20:0:0:0: [sdb] Asumiendo caché de unidad: escritura [89940.684862] sdb: tabla de particiones desconocida [89940.687887] sd 20:0:0:0: [sdb] Error al solicitar datos de caché [89940.687893] sd 20:0:0:0: [sdb] Asumiendo caché de unidad: escritura [89940.687897] sd 20:0:0:0: [sdb] Disco SCSI adjunto
Respuesta3
Hay algunas formas de probar su disco duro. Descargue un software llamado "HDTune". Este es un programa pago pero tiene una versión de prueba que dura 30 días con funcionalidad completa. Puede usarlo para buscar sectores defectuosos y verificar el estado de su disco duro. En cualquier caso tenías sectores defectuosos, puedes intentar arreglarlo con HDD Regenerators,Contratar DescargarQue yo uso personalmente.
Asegúrese de no tener ningún disco duro insertado aparte del que desea probar. Es de arranque, puedes grabarlo en un CD o en una unidad USB.
Lo siguiente que sugiero es revisar tus cables. Especialmente en discos externos, normalmente esos errores son causados por falta de energía, intenta insertarlo en otra computadora o cambiar cables si tienes extras y luego mira si aún falla.
Respuesta4
Es extraño que genere el error en archivos de más de 4 GB. Dado que el FS es NTFS, la limitación queda excluida.
Sospecho que es un error de desincronización del búfer.
Pruebe esto: vaya a regedit --> HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\System
Cree un nuevo valor DWORD llamado CopyFileBufferedSynchronousIo
. Cambie su valor de 0 predeterminado a 1.
Otras cosas a considerar: ¿Tiene rutas y nombres de archivos muy grandes (como más de 255 caracteres)? ¿Utiliza idiomas adicionales en el sistema operativo u otros idiomas además de la configuración predeterminada de formato regional/teclado o de hora/fecha? (Por extraño que parezca, estos pueden romper suficientes cosas en las ventanas). Como alternativa, es posible que el controlador de la unidad externa no pueda gestionar más de 2,0 TB. -editar- ¿Puedes publicar una captura de pantalla del espacio exacto utilizado actualmente?