Repare el disco desde el modo de usuario único (fsck falla)

21

Hoy temprano, mi iMac 2009 emitió errores de E / S al intentar copiar archivos. Así que ejecuté la utilidad de disco, verifique el disco para ver si algo andaba mal. Era. Pero como es mi disco de inicio, no pude repararlo, así que probé el modo seguro. El modo seguro funcionó la primera vez, pero cuando reinicié, muestra la barra de progreso llenándose, antes de detenerse. Cada vez que lo enciendo ahora, ocurre la misma barra de progreso y luego se bloquea. El arranque en modo detallado revela que fsck falla con la señal 8.

Utilizando el modo de usuario único, ya que hasta donde yo sé, la única forma en que puedo obtener acceso al sistema, he estado ejecutando fsck_hfs. Sin embargo, siempre falla. A continuación se muestra la salida de fsck_hfs -d / dev / disk0s2.

** /dev/rdisk0s2
        Using cacheBlockSize=32K cacheTotalBlock=65536 cacheSize=2097152K.
** Root file system
   Executing fsck_hfs (version diskdev_cmds-491.6~3).
** Verifying volume when it is mounted with write access.
** Checking Journaled HFT Plus volume.
** Checking extents overflow file.
** Checking catalog file.
   Missing thread record (id = 9931104)
   Missing thread record (id = 16434146)
   Missing thread record (id = 19370458)
disk0s2: I/O error
hfs_swap_BTNode: offsets 10 and 11 out of order (0x0000, 0x0000)
   Invalid node structure
(4, 115897)
** The volume Macintosh HD could not be verified completely.
        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 1952491198 0x74622d5e
        sector size = 512 0x200
        VolumeObject flags = 0x07
        total sectors for volume = 1952591200 0x74622d60
        total sectors for embedded volume = 0 0x00

Necesito absolutamente poder arrancar para usarlo como monitor externo.

Max
fuente
¿Qué versión de OS X estás ejecutando?
nohillside
Lo siento, debería haber dicho. Está ejecutando Snow Leopard.
Max
1
Si todavía tiene un DVD de instalación, puede arrancar desde allí y ejecutar Repair Disk.
nohillside
Nunca tuve un DVD de instalación, vino preinstalado. He estado considerando intentar quemar uno con esta vieja computadora portátil que saqué. También he estado considerando DiskWarrior, ¿es probable que pueda solucionarlo?
Max
1
Y por "launchd'ing" quiero decir: launchctl load /System/Library/LaunchDaemons/com.apple.kextd.plist launchctl load /System/Library/LaunchDaemons/com.apple.notifyd.plist launchctl load /System/Library/LaunchDaemons/com.apple.configd.plist launchctl load /System/Library/LaunchDaemon/com.apple.DirectoryServices.plist Yo entonces hice algunas otras cosas, no sé si era necesario, y luego shutdown -h now, y cuando eso no funcionó, exit.
Max

Respuestas:

4

Hace unos tres años, me encontré exactamente con el mismo problema que tienes. El problema está en el disco duro en sí mismo: nada relacionado con el software. Llévelo a la tienda de reparación de Apple más cercana / mejor y haga que reemplacen su disco duro. Luego puede restaurar toda su información desde su copia de seguridad. Usted hace una copia de seguridad de su computadora, ¿no?

(Nota: si olvidó hacer una copia de seguridad de su computadora recientemente o si no puede acceder a sus archivos antiguos, es probable que el taller de reparación pueda recuperar la mayoría, si no todos, sus datos. Sin embargo, si el HDD está realmente dañado, lo mejor es enviarlo a DriveSavers para un desmontaje de la sala limpia y recuperación de datos. Sin embargo, si elige esa opción, prepárese para gastar varios cientos de dólares).

Mate
fuente
iFixit tiene procedimientos de bricolaje para reemplazar el disco duro. Pero necesita un DVD de instalación o una memoria USB, que puede pedir prestada a un amigo.
mouviciel
Tienes razón, era un disco duro que funciona mal en lugar de solo entradas poco fiables en el sistema de archivos. Tengo copias de seguridad, específicamente Time Machine, pero terminé usando DiskWarrior para crear una "vista previa" del disco duro, clonarlo en una unidad externa y arrancar desde la unidad externa. Es temporal hasta que tenga la oportunidad de reemplazar el disco duro interno, pero todo funciona sin problemas en este momento.
Max
14

Puede intentar forzar la fsck_hfsreconstrucción del catálogo ejecutando

fsck_hfs -Rc -d /dev/disk0s2

o (si desea evitar tener que responder las indicaciones)

fsck_hfs -y -Rc -d /dev/disk0s2

Por supuesto, esto solo reparará los daños lógicos y seguirá fallando si el disco está dañado.

nohillside
fuente
1
De hecho, lo intenté con -r (-Rc no parece funcionar). Siempre dio el error "estructura de nodo no válida" y "longitud de clave no válida" solo el 75% del tiempo.
Max
Esto no es un buen augurio :-(
nohillside
1
¡Salvaste mi día!
カ オ ナ シ
La ejecución de este comando corrigió dos veces mi disco cuando Disk Utility no pudo. Aunque Disk Utility aún informa errores en el sistema de archivos, al menos el volumen se montó al reiniciar. ¡Gracias!
ziggurismo
8

Encontré esta página a través de Google y la estoy dejando caer aquí. Al sufrir la misma "estructura de nodo no válida" y negarme a arrancar, pude pasar la pantalla gris e iniciar mi escritorio usando los siguientes pasos:

  1. Arranque en modo de usuario único (cmd + s al inicio)

  2. Montar el disco duro que falla

    /sbin/mount -uw /

  3. Salga del modo de usuario único escribiendo "salir" en el indicador

  4. (No estoy seguro si este paso es necesario). Presione el botón de encendido / apagado una vez.

Al hacer lo anterior, arranqué mi Macbook (ejecutando Snow Leopard) en el escritorio, evitando la comprobación de fallas fsck y permitiéndome ejecutar una copia de seguridad actualizada de la máquina del tiempo. YMMV pero espero que esto ayude a alguien.

discoloop
fuente
1
Esto combinado con la fuerza fsck_hfs funcionó para mí
rfabbri
1
El sistema puede iniciarse en el escritorio con las instrucciones anteriores y parecer normal, pero es probable que la partición todavía esté dañada y no pueda repararse. Después de la copia de seguridad de la máquina del tiempo sugerida, restaure desde esta copia de seguridad de la máquina del tiempo en modo de recuperación.
rfabbri
Eres un salvavidas
spacetyper
3

Por lo que yo puedo decir:

fsck_hfs -Rc -d /dev/disk0s2

... no es un comando válido, Rdebería serlo r. Asi que:

fsck_hfs -rc -d /dev/disk0s2

en lugar.

Phil Faber
fuente
55
La página de manual para fsck_hfs(al menos en 10.9) dice que -res sinónimo de -Rc.
mhucka
3
esto solo debería ser un comentario a la otra respuesta
rfabbri
1
Esta respuesta definitivamente debe eliminarse y escribirse como un comentario en el tipo original que sugirió -Rc.
esaruoho