6 votos

APFS: el árbol fsroot no es válido después de la copia de seguridad de Time Machine - ¿cómo recuperar y evitar en el futuro?

Sistema

MacBook Pro, finales de 2013, SSD de 1 TB (nuevo, sustituido recientemente por Apple), APFS (sin registro en diario, sin distinción de mayúsculas y minúsculas), High Sierra 10.13.2, Time Machine a disco duro de red.

Lo que pasó

  • El Mac dejó de funcionar, no space left on device .
  • El reinicio ha fallado.
  • Traté de arrancar en modo de recuperación con Comando-R y ejecutar Primeros auxilios desde la Utilidad de Discos - falló, porque aparentemente el sistema de recuperación también reside en el mismo disco lo que parece hacer imposible el fsck en APFS.
  • Traté de borrar manualmente algunos archivos a través de rm , consiguió no space left on device
  • Traté de truncar algunos archivos manualmente a través de cat /dev/null > somefile , consiguió no space left on device
  • Arrancó en modo de recuperación con Shift-Comando-R (descarga el sistema desde Internet) y ejecutó Primeros auxilios de nuevo. Esta vez con un éxito limitado:

    ** Checking volume.
    ** Checking the container superblock.
    ** Checking the EFI jumpstart record.
    ** Checking the space manager.
    ** Checking the object map.
    ** Checking the APFS volume superblock.
    ** Checking the object map.
    error: invalid dstream.size (10730881024), is greater than dstream.alloced_size (71151616)
    error: xf : INO_EXT_TYPE_DSTREAM : invalid dstream
    error: inode_val: object (oid 0x16309a1): invalid xfields
    ** Checking the fsroot tree.
       fsroot tree is invalid.
    ** The volume /dev/rdisk2s1 could not be verified completely.

Así que aparentemente el árbol fsroot no es válido. He buscado, pero no fui capaz de encontrar ningún consejo útil sobre cómo arreglar esto (excepto, por supuesto, reformatear y restaurar desde una copia de seguridad, que me gustaría evitar).

Información adicional

En el sistema hay una VM de Parallels Windows con un disco duro virtual de 100 GB (sí, un gran archivo), que se utilizó recientemente (por lo que se necesitaba una copia de seguridad). La última vez que he utilizado el ordenador, aproximadamente 20 GB estaban todavía libres en el SSD de MacOS. Durante un día más o menos, las copias de seguridad de Time Machine no se han completado, pero no se ha mostrado ningún mensaje de error. Cuando ocurrió el problema, había dejado la máquina encendida durante la noche para completar una copia de seguridad incremental de Time Machine. La conexión aquí es, que Time Machine está aparentemente usando instantáneas APFS. Sospecho que esta es la causa principal de por qué ocurrió este desastre.

Preguntas

  1. ¿Hay alguna manera de arreglar esto (sin reformatear y restaurar desde una copia de seguridad)?
  2. ¿Cuál es la mejor manera de evitar esto en el futuro (especialmente con respecto a Time Machine)?

Gracias.

Actualización

Cuando se ejecuta fsck_apfs con la bandera de depuración -d La salida contiene un poco más de información:

** Checking volume.
** Checking the container superblock.
** Checking the EFI jumpstart record.
** Checking the space manager.
** Checking the object map.
** Checking the APFS volume superblock.
** Checking the object map.
error: invalid dstream.size (10730881024), is greater than dstream.alloced_size (71151616)
error: xf : INO_EXT_TYPE_DSTREAM : invalid dstream
error: inode_val: object (oid 0x16309a1): invalid xfields
obj-id: 23267745 type: Inode      
private-id: 23267745 parent-id: 12896552 cr/mtime: 1515089959653928186/1515090145416398252 
def-prot-class: 0 
uid/gid/mode: 0/0/0x8180 bsd_flags: 0x0 internal_flags: 0x8280 name: NO-NAME
** Checking the fsroot tree.
   fsroot tree is invalid.
** The volume /dev/disk2 could not be verified completely.

0 votos

¿Ha encontrado alguna solución? Estoy obteniendo el mismo error con el mismo tamaño de disco de Parallels VM. Ahora Parallels no se inicia.

0 votos

Desgraciadamente, no. Tuve que restaurar el contenido de mi disco desde una copia de seguridad.

0 votos

Estoy teniendo los mismos problemas como resultado de localsnapshots y un disco que se llena. Pero esto no es VM pero un Mac real con un SSD local. Pero mi fsck no reporta errores. Básicamente, el combo TimeMachine APFS es frágil. MacOS High Sierra.

5voto

CWoods Puntos 151

Acabo de encontrarme con un problema similar. Probablemente habrás encontrado que el problema estaba en uno de los archivos de la VM de Parallels - al menos ese fue el culpable en mi caso. Su fsck_apfs -d /disk/<disk> cheque devuelto:

obj-id: 23267745 type: Inode

Si hubieras abierto el terminal podrías haber obtenido la ruta al archivo (o archivos) que utiliza ese inodo utilizando el siguiente comando:

find / -inum 23267745

A partir de ahí habrías sabido qué archivo(s) había que restaurar en lugar de hacer una restauración completa.

En mi caso el archivo de la VM sólo estaba disponible en la instantánea ya que excluyo mis VMs de TimeMachine. Restauré sólo ese archivo de una instantánea anterior y llegué más lejos a través de fsck_apfs - llegó a través del disco para comprobar las instantáneas y luego bombardeó en el mismo archivo en la segunda instantánea. Por suerte las instantáneas sólo se guardan como máximo 24 horas, así que debe se aclara después de ese punto.

Sin embargo, su kilometraje puede variar, ya que podría ser tan "simple" como un archivo o sólo la punta del iceberg.

0 votos

Tema antiguo, lo sé, pero ahora tengo la misma situación. Además mis VMs ya no arrancan y una no se puede copiar. ¿Qué quieres decir con "restaurar sólo ese archivo de una instantánea anterior"? ¿Usando Time Machine? ¿O alguna otra cosa? También excluyo mis máquinas virtuales de Time Machine. Gracias.

0 votos

@HenryRusted Perdón por el retraso en la respuesta... Parece que APFS toma instantáneas que son accesibles a través de tmutil (prueba: tmutil listlocalsnapshots /). A pesar de que excluir las máquinas virtuales de TimeMachine parece que todavía fue recogido en la instantánea. No recuerdo el comando exacto que he utilizado desde el terminal en modo de recuperación para restaurar el archivo de la instantánea.

0 votos

Hay muchas páginas con gente que recibe este mensaje de error, y la tuya es la única respuesta realmente útil.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X