Tengo el disco Mac OS X de un amigo que viene con una HFS+
partición. Se supone que debo recuperar los datos personales de este disco, y todavía no estoy seguro de si el sistema de archivos está dañado o si el disco está muriendo).
Antecedentes : los síntomas completos son los siguientes. Linux reconoce el disco e incluso se monta automáticamente (usando Xfce
aquí):
liv@liv-HP-Compaq-dc7900:~$ cat /etc/mtab | grep -i hfs
/dev/sdb2 /media/Macintosh\040HD hfsplus ro,nosuid,nodev,uhelper=udisks 0 0
El núcleo informa lo siguiente:
[ 4382.681310] usb 2-5: USB disconnect, device number 2
[ 4390.104044] usb 2-5: new high-speed USB device number 3 using ehci_hcd
[ 4390.259178] Initializing USB Mass Storage driver...
[ 4390.259983] scsi6 : usb-storage 2-5:1.0
[ 4390.260077] usbcore: registered new interface driver usb-storage
[ 4390.260079] USB Mass Storage support registered.
[ 4391.260684] scsi 6:0:0:0: Direct-Access ASMT 2105 0 PQ: 0 ANSI: 6
[ 4391.261346] sd 6:0:0:0: Attached scsi generic sg2 type 0
[ 4391.494924] sd 6:0:0:0: [sdb] 488397168 512-byte logical blocks: (250 GB/232 GiB)
[ 4391.495668] sd 6:0:0:0: [sdb] Write Protect is off
[ 4391.495672] sd 6:0:0:0: [sdb] Mode Sense: 43 00 00 00
[ 4391.496551] sd 6:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[ 4391.560091] sdb: sdb1 sdb2
[ 4391.565039] sd 6:0:0:0: [sdb] Attached SCSI disk
[..]
[10376.614742] hfs: Filesystem was not cleanly unmounted, running fsck.hfsplus is recommended. mounting read-only.
[10380.531230] sd 6:0:0:0: [sdb] Unhandled sense code
[10380.531234] sd 6:0:0:0: [sdb] Result: hostbyte=invalid driverbyte=DRIVER_SENSE
[10380.531239] sd 6:0:0:0: [sdb] Sense Key : Medium Error [current]
[10380.531243] sd 6:0:0:0: [sdb] Add. Sense: Unrecovered read error
[10380.531253] sd 6:0:0:0: [sdb] CDB: Read(10): 28 00 00 1e 22 e8 00 00 08 00
[10380.531259] end_request: critical target error, dev sdb, sector 1975016
[10380.531264] Buffer I/O error on device sdb2, logical block 195672
[10384.353981] sd 6:0:0:0: [sdb] Unhandled sense code
[10384.353985] sd 6:0:0:0: [sdb] Result: hostbyte=invalid driverbyte=DRIVER_SENSE
[10384.353990] sd 6:0:0:0: [sdb] Sense Key : Medium Error [current]
[10384.353995] sd 6:0:0:0: [sdb] Add. Sense: Unrecovered read error
[10384.354004] sd 6:0:0:0: [sdb] CDB: Read(10): 28 00 00 1e 22 e8 00 00 08 00
[10384.354011] end_request: critical target error, dev sdb, sector 1975016
[10384.354015] Buffer I/O error on device sdb2, logical block 195672
Aquí hay una salida relevante de lshw
:
*-scsi
physical id: 3
bus info: usb@2:5
logical name: scsi7
capabilities: emulated scsi-host
configuration: driver=usb-storage
*-disk
description: SCSI Disk
product: 2105
vendor: ASMT
physical id: 0.0.0
bus info: scsi@7:0.0.0
logical name: /dev/sdb
version: 0
serial: 00000000000000000000
size: 232GiB (250GB)
capabilities: gpt-1.00 partitioned partitioned:gpt
configuration: ansiversion=6 guid=6b43402b-9887-4a33-a329-9801b59ccdc7
*-volume:0
description: Windows FAT volume
vendor: BSD 4.4
physical id: 1
bus info: scsi@7:0.0.0,1
logical name: /dev/sdb1
version: FAT32
serial: 70d6-1701
size: 199MiB
capacity: 199MiB
capabilities: boot fat initialized
configuration: FATs=2 filesystem=fat label=EFI name=EFI System Partition
*-volume:1
description: Apple HFS partition
vendor: Mac OS X (fsck)
physical id: 2
bus info: scsi@7:0.0.0,2
logical name: /dev/sdb2
version: 4
serial: d9a741cc-8313-cc78-0000-000000800000
size: 232GiB
capabilities: journaled bootable osx hfsplus initialized
configuration: boot=osx checked=2009-09-24 02:29:07 created=2009-09-23 17:29:07 filesystem=hfsplus lastmountedby=fsck modified=2013-11-03 01:02:00 name=Customer state=unclean
Cuando abro la unidad Thunar
, recibo el siguiente mensaje de error: "Failed to open directory "Macintosh HD". Error when getting information for file '/media/Macintosh HD/.journal': Input/output error."
(Puedo acceder al punto de montaje y algunos subdirectores, si los uso emelFM2
).
Si intento ls
en el punto de montaje, obtengo un montón de errores de E / S:
liv@liv-HP-Compaq-dc7900:/media/Macintosh HD$ ls -lha
ls: cannot access .hotfiles.btree: Input/output error
ls: cannot access .journal: Input/output error
ls: cannot access .journal_info_block: Input/output error
ls: cannot access .Spotlight-V100: Input/output error
ls: cannot access .Trashes: Input/output error
ls: cannot access home: Input/output error
ls: cannot access libpeerconnection.log: Input/output error
ls: cannot access net: Input/output error
ls: reading directory .: Input/output error
total 20M
drwxrwxr-t 1 root 80 35 Oct 13 22:56 .
drwxr-xr-x 3 root root 4.0K Jan 16 21:09 ..
drwxrwxr-x 1 root 80 53 Oct 18 22:07 Applications
drwxr-xr-x 1 root root 39 Sep 26 00:51 bin
drwxrwxr-t 1 root 80 2 Jul 9 2009 cores
dr-xr-xr-x 1 root root 2 Jul 9 2009 dev
-rw-rw-r-- 1 501 80 16K Sep 8 14:19 .DS_Store
lrwxr-xr-x 1 root root 11 Sep 24 2009 etc -> private/etc
---------- 1 root 80 0 Jul 9 2009 .file
drwx------ 1 99 99 246 Nov 3 00:29 .fseventsd
lrwxr-xr-x 1 root 80 60 Mar 20 2010 Guides de l’utilisateur et informations -> /Library/Documentation/User Guides and Information.localized
dr-xr-xr-t 1 root root 2 Sep 24 2009 .HFS+ Private Directory Data?
d????????? ? ? ? ? ? home
-????????? ? ? ? ? ? .hotfiles.btree
-????????? ? ? ? ? ? .journal
-????????? ? ? ? ? ? .journal_info_block
-????????? ? ? ? ? ? libpeerconnection.log
drwxrwxr-t 1 root 80 58 Mar 27 2013 Library
drwxrwxrwt 1 root root 4 Sep 18 2012 lost+found
-rw-r--r-- 1 root root 20M Jun 8 2011 mach_kernel
d????????? ? ? ? ? ? net
drwxr-xr-x 1 root root 2 Jul 9 2009 Network
drwxr-xr-x 1 501 80 3 Oct 26 2010 opt
drwxr-xr-x 1 root root 6 Sep 24 2009 private
drwxr-xr-x 1 root root 67 Sep 26 00:52 sbin
d????????? ? ? ? ? ? .Spotlight-V100
drwxr-xr-x 1 root root 4 Jul 3 2011 System
lrwxr-xr-x 1 root root 11 Sep 24 2009 tmp -> private/tmp
d????????? ? ? ? ? ? .Trashes
drwxr-xr-x 1 root root 2 May 18 2009 .vol
-rw-r--r-- 1 501 80 70K Jun 26 2013 .VolumeIcon.icns
Por último, ya intenté instalar hfsprogs
y ejecutar fsck.hfsplus
, pero sin mucha suerte:
root@liv-HP-Compaq-dc7900:/home/liv# fsck.hfsplus -q /dev/sdb2
** /dev/sdb2
QUICKCHECK ONLY; FILESYSTEM DIRTY
root@liv-HP-Compaq-dc7900:/home/liv# fsck.hfsplus -d /dev/sdb2
** /dev/sdb2
Using cacheBlockSize=32K cacheTotalBlock=1024 cacheSize=32768K.
** Checking HFS Plus volume.
Invalid B-tree node size
(8, 0)
** Volume check failed.
volume check failed with error 7
volume type is pure HFS+
primary MDB is at block 0 0x00
alternate MDB is at block 0 0x00
primary VHB is at block 2 0x02
alternate VHB is at block 487725342 0x1d12191e
sector size = 512 0x200
VolumeObject flags = 0x07
total sectors for volume = 487725344 0x1d121920
total sectors for embedded volume = 0 0x00
Pregunta : De los mensajes de error anteriores, ¿está dañado el sistema de archivos o falla la unidad? ¿Cómo puedo reparar el sistema de archivos dañado? Y si ese no es el problema, ¿cómo puedo recuperar los datos del usuario de un disco que falla parcialmente?
ACTUALIZACIÓN1 :
Dada la información útil que obtuve de ¿Qué opción 'smartctl -d' debería usar en este disco duro: 'scsi' o 'ata'? , Ahora logré ejecutar con éxito smartctl
en el disco duro:
root@liv-HP-Compaq-dc7900:/home/liv# smartctl -d sat -H -i -c -A -l error -l selftest -l selective '/dev/sdb'
smartctl 5.41 2011-06-09 r3365 [x86_64-linux-3.2.0-57-generic] (local build)
Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net
=== START OF INFORMATION SECTION ===
Device Model: TOSHIBA MK2555GSXF
Serial Number: 10J9SA69S
LU WWN Device Id: 5 000039 245a067fd
Firmware Version: FH205B
User Capacity: 250,059,350,016 bytes [250 GB]
Sector Size: 512 bytes logical/physical
Device is: Not in smartctl database [for details use: -P showall]
ATA Version is: 8
ATA Standard is: Exact ATA specification draft version not indicated
Local Time is: Fri Jan 17 18:02:43 2014 CET
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
[..]
SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x000b 100 100 050 Pre-fail Always - 0
2 Throughput_Performance 0x0005 100 100 050 Pre-fail Offline - 0
3 Spin_Up_Time 0x0027 100 100 001 Pre-fail Always - 1031
4 Start_Stop_Count 0x0032 100 100 000 Old_age Always - 16237
5 Reallocated_Sector_Ct 0x0033 100 100 050 Pre-fail Always - 18
7 Seek_Error_Rate 0x000b 100 100 050 Pre-fail Always - 0
8 Seek_Time_Performance 0x0005 100 100 050 Pre-fail Offline - 0
9 Power_On_Hours 0x0032 081 081 000 Old_age Always - 7987
10 Spin_Retry_Count 0x0033 253 100 030 Pre-fail Always - 0
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 5274
191 G-Sense_Error_Rate 0x0032 100 100 000 Old_age Always - 1119
192 Power-Off_Retract_Count 0x0032 084 084 000 Old_age Always - 8196
193 Load_Cycle_Count 0x0032 037 037 000 Old_age Always - 635340
194 Temperature_Celsius 0x0022 100 100 000 Old_age Always - 25 (Min/Max 7/49)
196 Reallocated_Event_Count 0x0032 100 100 000 Old_age Always - 3
197 Current_Pending_Sector 0x0032 100 100 000 Old_age Always - 124
198 Offline_Uncorrectable 0x0030 100 100 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x0032 200 253 000 Old_age Always - 0
220 Disk_Shift 0x0002 100 100 000 Old_age Always - 57
222 Loaded_Hours 0x0032 087 087 000 Old_age Always - 5415
223 Load_Retry_Count 0x0032 100 100 000 Old_age Always - 0
224 Load_Friction 0x0022 100 100 000 Old_age Always - 0
226 Load-in_Time 0x0026 100 100 000 Old_age Always - 346
240 Head_Flying_Hours 0x0001 100 100 001 Pre-fail Offline - 0
254 Free_Fall_Sensor 0x0032 100 100 000 Old_age Always - 8107
SMART Error Log Version: 1
ATA Error Count: 1210 (device log contains only the most recent five errors)
[..]
Error 1210 occurred at disk power-on lifetime: 7984 hours (332 days + 16 hours)
When the command that caused the error occurred, the device was active or idle.
After command completion occurred, registers were:
ER ST SC SN CL CH DH
-- -- -- -- -- -- --
40 51 08 e8 22 1e 40 Error: UNC 8 sectors at LBA = 0x001e22e8 = 1975016
Commands leading to the command that caused the error were:
CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
-- -- -- -- -- -- -- -- ---------------- --------------------
25 da 08 e8 22 1e 40 00 00:08:36.484 READ DMA EXT
25 da 08 e8 22 1e 40 00 00:08:32.637 READ DMA EXT
25 da 08 00 66 22 40 00 00:08:32.637 READ DMA EXT
25 da 08 f8 65 22 40 00 00:08:32.625 READ DMA EXT
25 da 08 50 c3 28 40 00 00:08:32.625 READ DMA EXT
[..]
SMART Self-test log structure revision number 1
No self-tests have been logged. [To run self-tests, use: smartctl -t]
SMART Selective self-test log data structure revision number 1
SPAN MIN_LBA MAX_LBA CURRENT_TEST_STATUS
1 0 0 Not_testing
2 0 0 Not_testing
3 0 0 Not_testing
4 0 0 Not_testing
5 0 0 Not_testing
Selective self-test flags (0x0):
After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.
No estoy seguro de cómo analizar esta salida, pero dos cosas se me ocurren:
SMART overall-health self-assessment test result: PASSED
ATA Error Count: 1210 (device log contains only the most recent five errors)
Entonces, ¿qué tan malo es? ¿Y cómo debo proceder?
ACTUALIZACIÓN2 :
Siguiendo las sugerencias en los comentarios, utilicé un Mac OS X para ejecutar diskutil verifyVolume
:
mac:~ admin$ diskutil list
[..]
/dev/disk1
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *250.1 GB disk1
1: EFI 209.7 MB disk1s1
2: Apple_HFS Macintosh HD 249.7 GB disk1s2
mac:~ admin$ diskutil verifyVolume /dev/disk1s2
Started filesystem verification on disk1s2 Macintosh HD
Checking Journaled HFS Plus volume
Invalid B-tree node size
The volume Macintosh HD could not be verified completely
Error: -9957: Filesystem verify or repair failed
Underlying error: 8: POSIX reports: Exec format error
Y fsck
:
mac:~ admin$ fsck -d /dev/disk1s2
** /dev/rdisk1s2
BAD SUPER BLOCK: MAGIC NUMBER WRONG
LOOK FOR ALTERNATE SUPERBLOCKS? [yn] y
SEARCH FOR ALTERNATE SUPER-BLOCK FAILED. YOU MUST USE THE
-b OPTION TO FSCK TO SPECIFY THE LOCATION OF AN ALTERNATE
SUPER-BLOCK TO SUPPLY NEEDED INFORMATION; SEE fsck(8).
Entonces, ¿qué tan malos son estos mensajes de error? ¿El brindis de la unidad?
ACTUALIZACIÓN3 :
Jugué un poco más smartctl
y me parece (¡pero por favor confirme!) Que la unidad es definitivamente tostada:
# 'smartctl' -d sat,16 -H -i -c -A -l error -l selftest -l selective '/dev/sdb'
smartctl 5.41 2011-06-09 r3365 [x86_64-linux-3.2.0-57-generic] (local build)
Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net
=== START OF INFORMATION SECTION ===
Device Model: TOSHIBA MK2555GSXF
Serial Number: 10J9SA69S
LU WWN Device Id: 5 000039 245a067fd
Firmware Version: FH205B
User Capacity: 250,059,350,016 bytes [250 GB]
Sector Size: 512 bytes logical/physical
Device is: Not in smartctl database [for details use: -P showall]
ATA Version is: 8
ATA Standard is: Exact ATA specification draft version not indicated
Local Time is: Mon Jan 27 15:20:57 2014 CET
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: FAILED!
Drive failure expected in less than 24 hours. SAVE ALL DATA.
See vendor-specific Attribute list for failed Attributes.
General SMART Values:
Offline data collection status: (0x00) Offline data collection activity
was never started.
Auto Offline Data Collection: Disabled.
Self-test execution status: ( 88) The previous self-test completed having
the electrical element of the test
failed.
Total time to complete Offline
data collection: ( 120) seconds.
Offline data collection
capabilities: (0x5b) SMART execute Offline immediate.
Auto Offline data collection on/off support.
Suspend Offline collection upon new
command.
Offline surface scan supported.
Self-test supported.
No Conveyance Self-test supported.
Selective Self-test supported.
SMART capabilities: (0x0003) Saves SMART data before entering
power-saving mode.
Supports SMART auto save timer.
Error logging capability: (0x01) Error logging supported.
General Purpose Logging supported.
Short self-test routine
recommended polling time: ( 2) minutes.
Extended self-test routine
recommended polling time: ( 90) minutes.
SCT capabilities: (0x0039) SCT Status supported.
SCT Error Recovery Control supported.
SCT Feature Control supported.
SCT Data Table supported.
SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x000b 100 100 050 Pre-fail Always - 0
2 Throughput_Performance 0x0005 100 100 050 Pre-fail Offline - 0
3 Spin_Up_Time 0x0027 100 100 001 Pre-fail Always - 1025
4 Start_Stop_Count 0x0032 100 100 000 Old_age Always - 1
5 Reallocated_Sector_Ct 0x0033 100 100 050 Pre-fail Always - 0
7 Seek_Error_Rate 0x000b 100 100 050 Pre-fail Always - 0
8 Seek_Time_Performance 0x0005 100 100 050 Pre-fail Offline - 0
9 Power_On_Hours 0x0032 100 100 000 Old_age Always - 0
10 Spin_Retry_Count 0x0033 100 100 030 Pre-fail Always - 0
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 1
191 G-Sense_Error_Rate 0x0032 100 100 000 Old_age Always - 0
192 Power-Off_Retract_Count 0x0032 100 100 000 Old_age Always - 0
193 Load_Cycle_Count 0x0032 100 100 000 Old_age Always - 3
194 Temperature_Celsius 0x0022 100 100 000 Old_age Always - 27 (Min/Max 26/30)
196 Reallocated_Event_Count 0x0032 100 100 000 Old_age Always - 0
197 Current_Pending_Sector 0x0032 100 100 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0030 100 100 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x0032 200 253 000 Old_age Always - 0
220 Disk_Shift 0x0002 100 100 000 Old_age Always - 57
222 Loaded_Hours 0x0032 100 100 000 Old_age Always - 0
223 Load_Retry_Count 0x0032 100 100 000 Old_age Always - 0
224 Load_Friction 0x0022 100 100 000 Old_age Always - 0
226 Load-in_Time 0x0026 100 100 000 Old_age Always - 353
240 Head_Flying_Hours 0x0001 001 001 001 Pre-fail Offline FAILING_NOW 3
254 Free_Fall_Sensor 0x0032 100 100 000 Old_age Always - 0
Error SMART Error Log Read failed: scsi error badly formed scsi parameters
Smartctl: SMART Error Log Read Failed
Error SMART Error Self-Test Log Read failed: scsi error badly formed scsi parameters
Smartctl: SMART Self Test Log Read Failed
Error SMART Read Selective Self-Test Log failed: scsi error badly formed scsi parameters
Smartctl: SMART Selective Self Test Log Read Failed
Podría destacar:
SMART overall-health self-assessment test result: FAILED! Drive failure expected in less than 24 hours. SAVE ALL DATA.
240 Head_Flying_Hours 0x0001 001 001 001 Pre-fail Offline FAILING_NOW 3
Sospecho que cualquier solución como testdisk
ophotorec
en el disco en sí está fuera de discusión en este momento. Entonces, mi única esperanza de rescatar cualquier dato sería conseguir un disco duro más grande y hacer una copia bit por bit de la unidad defectuosa usando dd
oddrescue
, y luego jugar con photorec
la imagen resultante. Cualquier otra idea más bienvenida!
ACTUALIZACIÓN4 :
Como se preguntó en Recuperación de datos de un disco duro dañado: el "truco del congelador" , estoy publicando la salida de smartctl -H /dev/yourdisk
y smartctl -A /dev/yourdisk
:
[Output was misleading so I removed that. See UPDATE5.]
¿Esto permite identificar el tipo de falla?
ACTUALIZACIÓN5 :
Hace aproximadamente una semana corrí tontamente testdisk
en el disco durante una noche (después de un par de fsck
intentos nativos de Mac OS X ), y el daño probablemente empeoró cuando el propietario simplemente lo dejó caer. Al final de la testdisk
sesión, oí claramente un ruido de clic (¿" clic de muerte "?), Y el disco no pudo realizar más lecturas (todas las lecturas resultaron en un error). Inicialmente supuse que esto estaba sucediendo debido al sobrecalentamiento, pero ahora tiendo a creer que el daño simplemente se propagó y la unidad ahora está en muy mal estado.
Cuando intento ejecutar smartctl
short self-test
en el disco, la prueba Completed with electrical failure
y la smartctl
salida son las mismas que en UPDATE3, incluido el 240 Head_Flying_Hours 0x0001 001 001 001 Pre-fail Offline FAILING_NOW 3
error.
También intenté una ddrescue
sesión, que terminó con un gran total de 0 bytes
rescatados.
root@xubuntu:/mnt/ram# ddrescue -f -n /dev/sdc /dev/sda /mnt/ram/ddrescue.log
Press Ctrl-C to interrupt
Initial status (read from logfile)
rescued: 0 B, errsize: 0 B, errors: 0
Current status
rescued: 0 B, errsize: 250 GB, current rate: 0 B/s
ipos: 65024 B, errors: 1, average rate: 0 B/s
opos: 65024 B, time from last successful read: 3.5 m
Finished
En cada intento de lectura, el núcleo se quejaba dmesg
de Buffer I/O error on device
:
[ 3706.642819] sd 9:0:0:0: [sdc] Sense Key : Medium Error [current]
[ 3706.642824] sd 9:0:0:0: [sdc] Add. Sense: Unrecovered read error
[ 3706.642834] sd 9:0:0:0: [sdc] CDB: Read(10): 28 00 00 00 00 18 00 00 08 00
[ 3706.642842] end_request: critical target error, dev sdc, sector 24
[ 3706.642845] Buffer I/O error on device sdc, logical block 3
[ 3710.910060] sd 9:0:0:0: [sdc] Unhandled sense code
[ 3710.910064] sd 9:0:0:0: [sdc] Result: hostbyte=invalid driverbyte=DRIVER_SENSE
Entonces, todo esto definitivamente apunta a daños en el hardware. Pero, ¿cuál es el tipo exacto de daño? (En parte, me gustaría comprobar si el "truco del congelador" es apropiado de alguna manera).
Como se sugirió en una pregunta relacionada , verifiqué Cómo recuperar datos cuando su disco duro funciona bien y me parece, dados los síntomas que he notado, que es:
- Su unidad está girando y haciendo ruidos al hacer clic, o
- Su unidad aumenta de velocidad y es detectada por su computadora, pero se bloquea cuando intenta acceder a ella
Entonces, dada toda la información adicional publicada aquí, ¿es posible identificar el tipo de falla que está experimentando el disco? ¿Y sería apropiado el "truco del congelador" en este caso?
(Se me sugirió que "cuando los cabezales de lectura y escritura tocan la superficie del disco, se mueven y giran, por lo que ya no es posible leer", y esto suena como una explicación realista, pero no estoy seguro de cómo para confirmarlo)
fuente
smartctl
para verificar si es solo un sector defectuoso o pocos, o si el disco está cerca del final.smartctl
en la unidad (ver ACTUALIZACIÓN1 en el OP). Alguna idea?fsck
odiskutil
.fsck
por algo moderno.Respuestas:
Parece que encontré este hilo demasiado tarde, pero para futuros lectores de este hilo:
Al realizar el rescate de datos, su primer paso debería ser hacer una imagen completa de la unidad con dd o algo similar (cloneZilla es una opción popular).
En otras palabras, obtenga una impresión de la unidad tal como está para no dañar más el volumen mientras intenta rescatar los datos.
fuente
testdisk
hicieron las herramientas de comprobación de FS, etc., fue agravar los problemas de hardware. Probablemente sea mejor clonar la imagen de la unidad utilizando una herramienta comoddrescue
, ya que permite omitir inteligentemente los sectores problemáticos (mientrasdd
que simplemente fallará a la primera señal de daño de hardware).Según el primer registro inteligente, es probable que tenga 124 sectores defectuosos: esta parte:
Debe realizar una exploración completa para asegurarse del número real. Algunos archivos están dañados con seguridad. Es por eso que tiene Cuenta de errores: 1210, cada vez que se lee un sector dañado, obtiene un error de +1. Debe escribir ceros en estos sectores si alguna vez desea que el disco funcione porque los sectores se pueden reubicar solo cuando se están escribiendo. No puedo decirte cómo operar en el sistema de archivos hfs porque nunca lo he usado. Si tenía ext4, podría usar fsck con las siguientes opciones:
Entonces, podría obtener la lista de todos los bloques defectuosos, y luego podría conocer su ubicación, lo que puede ayudar a estimar si los bloques defectuosos dañaron los archivos normales o algo más. Yo estaba usando
debugfs
. Luego, podría escribir ceros en estos sectores mediante:y elimine los archivos dañados.
Del registro que proporcionó:
Sabes qué archivos están dañados.
Lo siguiente es el valor del siguiente parámetro:
Esto mata tu disco, o ya lo mató. Mi disco, por ejemplo, tiene una vida útil de 500k. Me enteré de esto cuando llegó a 350k ... Finalmente, deshabilité esta característica en el firmware de mi disco, y funciona hasta ahora.
Lo siguiente es el sistema de archivos supperblock. Debería haber hecho una copia de ese bloque para este tipo de situación, y después de eliminar los bloques defectuosos, podría restaurar el superbloque. Si el superbloque se dañó y no tiene la copia de seguridad, o no recuerda la ubicación de los sectores de la copia de seguridad, no podrá recuperar los datos. Tratar de usar:
Pero puede leer el sistema de archivos (comando ls), por lo que no es tan malo, y creo que después de eliminar los bloques defectuosos y eliminar algunos archivos, todo debería estar bien.
fuente
testdisk
durante una noche, y el daño probablemente empeoró de lo que había sido cuando el propietario simplemente lo dejó caer). Así que ahora simplemente esperoddrescue
todo lo que pueda de él , y luegophotorec
lo que pueda ser rescatado.dmesg
.001 001 001
: si VALOR = <THRESH, el disco probablemente fallará, por lo que obtendrá esa información. También podría no significar nada.Fallos de accionamiento mecánico.
Para la recuperación de datos de bloques defectuosos, puede usar la utilidad SpinRite de $ 89 para recuperar datos. SpinRite no depende del sistema de archivos.
Daños en el sistema de archivos HFS +
Cuando haya problemas en el sistema de archivos HFS +, use la utilidad DiskWarrior de $ 99.95 en Mac OS X para reparar problemas HFS +.
Como ya ha utilizado otras herramientas de reparación (fsck), debe usar DiskWarrior en modo " scavenge ". Puede alcanzar la opción oculta de "barrido" presionando y manteniendo altpresionada la tecla antes de presionar el botón "Reconstruir" ("Reconstruir" cambia a "Reconstruir ..." mientras mantiene presionada la tecla Alt). Ahora agregue una marca de verificación a "Scavenge" y comience a "Reconstruir".
El "barrido" de DiskWarrior está optimizado para recuperar archivos después de que otra utilidad de reparación de disco ya se haya utilizado para recuperar archivos. La corrupción del OP puede ser causada por problemas lógicos o físicos. DiskWarrior se especializa en eliminar errores de directorio "lógicos", SpinRite se especializa en recuperar datos causados por problemas "físicos" del disco duro.
fuente
ddrescue
,testdisk
y otras herramientas de software libre han demostrado ser de gran ayuda hasta el momento.jpgrecover
en stock Debian funciona maravillosamente. Además, el contrapunto de una herramienta OSX molesta llamada Asistente de recuperación de archivos Easeus funciona bien, pero NO si el disco está en mal estado como en la pregunta de OP, aquí.