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
- ¿Hay alguna manera de arreglar esto (sin reformatear y restaurar desde una copia de seguridad)?
- ¿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.