Si utiliza Btrfs zoned en un HC620 y el sistema de archivos queda de repente en solo lectura al acercarse al 100%, las pistas principales suelen ser ENOSPC, falta de espacio de trabajo para zone reclaim o un cambio forzado a solo lectura después de que falle el commit de una transacción.
Sin embargo, “completo” y “solo lectura” solo pueden describir los síntomas cuando ocurre la falla, pero no pueden probar directamente que el disco duro no esté dañado. El orden correcto es:
- Deje de escribir tareas inmediatamente;
- Guarde el registro del kernel cuando ocurra la falla;
- Confirme el dispositivo, el estado de montaje y la distribución del espacio por zonas;
- Diferenciar entre agotamiento puro del espacio, recopilación bloqueada, cancelación de transacciones y errores de E/S de bajo nivel;
- Solo cuando la evidencia respalde ENOSPC puro, intente montarlo nuevamente en modo lectura-escritura y libere espacio en lotes;
- Una vez recuperado el espacio, realice únicamente tareas de bajo riesgo y complete la verificación de la recuperación.
No ejecute
mount -o remount,rw, un balance sin filtros nibtrfs check --repairsolo porque el sistema de archivos esté en modo de solo lectura. Es una respuesta de protección; primero localice el error inicial que la activó.
Este artículo supone que el punto de montaje es /mnt/hc620. El nombre del dispositivo está representado únicamente por /dev/sdX, que debe reemplazarse por el dispositivo o partición real antes de la ejecución. No copie la letra de la unidad.
¿Por qué es más difícil liberar espacio en el HC620 que en un disco duro normal una vez lleno?
El Western Digital Ultrastar DC HC620 es un SMR administrado por host, es decir, un disco dividido donde el host administra el área de escritura.
Linux normalmente lo expone como un dispositivo de bloque zonificado:
|
|
Espere ver algo como:
|
|
El modelo real, la visualización de capacidad y el nombre del dispositivo pueden ser diferentes, y prevalecerá la salida de esta máquina.
Los discos duros CMR normales pueden sobrescribir los sectores asignados. La zona de escritura secuencial del SMR administrado por host debe continuar escribiendo desde el puntero de escritura actual; Para reutilizar una zona escrita, generalmente es necesario mover primero los datos aún válidos y luego restablecer toda la zona.
Btrfs admite el modo por zonas a partir de Linux 5.12. Utiliza VACA. Después de sobrescribir un archivo, actualizar o eliminar metadatos, es posible que el sistema de archivos ya no haga referencia al bloque de datos antiguo, pero no se convertirá inmediatamente en una zona vacía reescribible.
Estos espacios aparecerán en btrfs filesystem usage como:
|
|
No significa “capacidad del disco duro permanentemente dañada”, sino espacio que se ha escrito en el pasado y al que ya no se hace referencia, pero que aún necesita pasar por la recuperación del grupo de bloques y el restablecimiento de zona antes de poder reutilizarse.
El proceso de reclaim necesita trasladar los datos que siguen siendo válidos a una zona nueva. Si no hay suficientes zonas de destino, puede producirse un ENOSPC transitorio.
Entonces, en el HC620:
|
|
No necesariamente inmediatamente igual a:
|
|
Esta es también la razón por la cual los Btrfs zonificados son más difíciles de procesar en el sitio que un disco normal después de que se escribe hasta el límite.
Qué tareas detener de inmediato
Después de descubrir que el punto de montaje es de solo lectura, no vuelva a intentar la tarea de copia original repetidamente.
Comience por detener los servicios que puedan continuar generando E/S o registrando ruido, como por ejemplo:
rsync,rcloneo tareas de descarga;- contenedores y máquinas virtuales;
- Escaneo de la biblioteca multimedia;
- Instantáneas y copias de seguridad programadas;
- tareas de limpieza, equilibrio o eliminación masiva.
Primero compruebe si hay un balance o scrub en curso:
|
|
No cancele tareas de forma automática solo para ejecutar estas instrucciones. Registre primero el estado. Si hay un balance o scrub en curso y el sistema todavía responde, utilice los registros para determinar si forma parte del fallo.
Compruebe qué procesos siguen ocupando el punto de montaje:
|
|
Este comando es sólo para observación y no finalizará automáticamente el proceso.
Guardar los registros antes de desmontar o reiniciar
Lo más valioso en dmesg a menudo no es la última línea forced readonly, sino el primer error anterior.
Primero guarde el registro completo del kernel en otro disco normal, como el disco del sistema:
|
|
Luego extraiga las líneas relevantes:
|
|
Si la máquina se ha reiniciado, verifique el último inicio:
|
|
Si el sistema no tiene un diario persistente, es posible que el registro del último inicio no exista. Por lo tanto, el sitio del error debería intentar exportar el registro primero y luego reiniciar.
Guarde también el entorno base:
|
|
Entre ellos, si OPTIONS de findmnt contiene ro, solo puede confirmar que el montaje actual es de solo lectura, pero no puede explicar por qué pasó a ser de solo lectura.
Identificar el dispositivo sin adivinar /dev/sdX
Primero verifique el dispositivo fuente desde el punto de montaje:
|
|
Verifique los dispositivos en el sistema de archivos nuevamente:
|
|
Confirmar vínculo estable del dispositivo:
|
|
Si el sistema de archivos está construido en una partición, los montajes posteriores deben usar la partición en lugar de todo el disco. Por ejemplo, si el dispositivo fuente real es /dev/sda1, no se puede escribir como /dev/sda.
Al registrar resultados reales como variables, también se requiere verificación manual:
|
|
No ejecute los marcadores de posición chinos en el ejemplo tal como están.
Leer la distribución espacial de Btrfs
Ejecute mientras el sistema de archivos aún está montado:
|
|
Notas clave:
|
|
Una cartera típica de alto riesgo se ve así:
|
|
No se limite a mirar df -h. Los datos, metadatos, grupo de bloques del sistema y espacio no asignado del dispositivo de Btrfs se encuentran en diferentes niveles; COW también necesita nuevo espacio para completar transacciones.
Device zone unusable no se puede utilizar solo como conclusión de falla:
- Un valor distinto de cero es un fenómeno normal después de que funciona el COW zonificado;
- Si el valor es muy grande y
Device unallocatedestá cerca de 0, significa que el espacio recuperable y el espacio inmediatamente asignable están muy desalineados; - Los valores pueden cambiar durante la recopilación en segundo plano;
- Incluso si es 0, esto no descarta el agotamiento de los metadatos o errores de E/S subyacentes.
Comprobar los contadores persistentes de errores del dispositivo
implementar:
|
|
Ejemplo de salida normal:
|
|
El significado de cada elemento:
write_io_errs: el dispositivo del bloque inferior no pudo completar la solicitud de escritura;read_io_errs: el dispositivo del bloque inferior no pudo completar la solicitud de lectura;flush_io_errs: Falló la escritura con FLUSH, relacionado con el orden de colocación de la transacción;corruption_errs: Se encontró una suma de comprobación que no coincide o un encabezado de metadatos dañado;generation_errs: la generación del bloque no coincide con las expectativas del nodo principal.
Todos los 0 son una buena señal, pero no una prueba de que el disco esté en buen estado. También combine registros del kernel, SMART, HBA y evaluación de errores de enlace.
No lo uses todavía:
|
|
-z borrará el recuento después de imprimir. Si la evidencia de falla se elimina antes de guardarla, se perderán puntos de referencia importantes.
Si realmente desea observar si los errores continúan aumentando, primero guarde el resultado actual y luego registre el tiempo:
|
|
Compare nuevamente después de completar las pruebas controladas en lugar de simplemente mirar una sola instantánea.
Clasificar el fallo en cuatro categorías mediante los registros
Categoría 1: falta de espacio o ENOSPC temporal
Otras pruebas que respaldan esta categoría incluyen:
|
|
Satisfacer a ambos:
btrfs device statsno tiene errores distintos de cero;- No hay ningún
I/O erroren el registro; - Sin errores de suma de comprobación, verificador de árbol, hoja corrupta o transid principal;
- De hecho, el sistema de archivos está casi lleno;
Device unallocatedes poco común o el reciclaje zonificado es significativamente limitado.
Esta situación es adecuada para ingresar al proceso posterior de “montaje controlado de lectura y escritura y liberación de espacio”.
Categoría 2: zone reclaim o block group reclaim bloqueado
El registro puede aparecer:
|
|
El problema en este punto no es necesariamente solo que el número de capacidad se ponga a cero, sino que también puede involucrar rutas de reciclaje, largas esperas de bloqueo o límites de zonas activas en zonas bajo un kernel específico.
No ejecute un balance sin filtros en este momento. Guarde primero la pila de llamadas, la versión del kernel y los registros completos; después consulte el análisis del fallo real publicado en el sitio:
[Revisión de dos fallas zonificadas de Btrfs en HC620: bloqueo, solo lectura y solución de problemas del kernel] (/es/2026/07/24/hc620-btrfs-zoned-deadlock-readonly-troubleshooting/)
Categoría 3: transacción abortada con causa aún no determinada
Las siguientes líneas sólo describen los resultados:
|
|
La verdadera razón suele ser evidente. Debe buscar entre docenas y cientos de líneas para encontrar el primer error, el código de retorno y la pila de llamadas.
Todo transaction aborted no se puede clasificar como completo. Los fallos de escritura de bajo nivel, los fallos de validación de metadatos y los errores del kernel también pueden abortar las transacciones.
Categoría 4: errores de E/S, checksum o estructura
Si aparece alguna de las siguientes pistas, debes detener el proceso de “eliminar algunos archivos y se solucionará”:
|
|
En este momento, se da prioridad a proteger las copias de datos y verificar los discos, los HBA SAS/SATA, los cables, las fuentes de alimentación y los errores de zona del kernel. No interprete simplemente un recuento de dispositivos distinto de cero como “sólo un disco lleno”.
Montar primero en solo lectura y rescatar los datos
Si aún se puede leer el montaje actual, copie primero los datos más importantes que no tengan otras copias.
Si necesita desmontar y volver a montar, salga primero de cualquier shell que esté usando el directorio y después ejecute:
|
|
Confirme que se ha desmontado:
|
|
Sin salida significa que el punto de montaje no está en la tabla de montaje actual.
Primer montaje en modo de solo lectura:
|
|
Luego copie los archivos importantes a otro disco en buen estado. No vuelva a colocar el directorio de destino en el HC620 durante un rescate de solo lectura.
Si falla el montaje normal de solo lectura, no superponga aleatoriamente el parámetro rescue=. Diferentes errores requieren diferentes opciones de rescate. Los parámetros de error pueden cubrir el registro o cambiar los resultados de la lectura. La decisión debe tomarse basándose en el informe de error específico.
Cuándo intentar un nuevo montaje de lectura y escritura
Se podrá considerar un intento controlado cuando se cumplan simultáneamente las siguientes condiciones:
- Registro de fallos guardado;
- Los datos importantes tienen otras copias o se ha completado primero el rescate de solo lectura;
- La primera razón en el registro apunta claramente a
ENOSPC; - Sin errores de E/S, suma de comprobación, comprobador de árbol o puntero de escritura de zona;
btrfs device statsno tiene ningún recuento de excepciones;- No hay tareas del kernel antiguas atascadas;
- El sistema de archivos se puede desmontar limpiamente.
Primero desmonte el sistema de archivos de solo lectura:
|
|
Realice un montaje nuevo en lugar de usar remount,rw para forzar el montaje actual de nuevo a lectura y escritura:
|
|
Verificar ahora:
|
|
Si la opción de montaje todavía contiene ro, o la cancelación de la transacción aparece nuevamente en el registro, deje de intentarlo y no realice un ciclo de montaje y desmontaje.
Si rw se muestra correctamente, no restaure el servicio de replicación inmediatamente. La primera tarea de la ventana de lectura y escritura es liberar datos borrables conocidos en lotes.
Cómo liberar espacio de forma segura tras recuperar la escritura
Dé prioridad a los directorios que se haya confirmado que tienen otras copias, que se pueden reconstruir y que son de gran tamaño.
Primero verifique el tamaño del directorio de primer nivel:
|
|
No copiar directamente:
|
|
El objetivo real debe imprimirse primero para confirmar que no hay errores de expansión variable:
|
|
Asegúrese de que el objetivo sea correcto antes de eliminar:
|
|
Para datos de varios terabytes, se recomienda eliminarlos en subdirectorios o lotes separados y no realizar escrituras a gran escala al mismo tiempo.
Verifique después de cada lote:
|
|
btrfs filesystem sync Puede que tarde un poco. Antes de que regrese el comando, no confunda “directorio desaparecido” porque se completó la recuperación de espacio.
Intente liberar primero cientos de GiB, en lugar de simplemente eliminar unos pocos GiB y luego llenarlos inmediatamente. El margen de seguridad específico depende de la carga de trabajo, el tamaño de la zona, los metadatos y la eficiencia del reciclaje, y no se puede dar una proporción absoluta para todo el HC620.
En uso a largo plazo, no se recomienda mantener Btrfs zonificados entre 99% y 100%. Para reservar ambos:
- Nuevo espacio de escritura diario;
- Espacio de transacciones COW;
- Espacio de crecimiento de metadatos;
- la recuperación de zona mueve un espacio de trabajo que todavía tiene datos válidos;
- Ventanas de mantenimiento y eliminación de emergencia.
Por qué es posible que el espacio no vuelva a aparecer inmediatamente después de la eliminación
La eliminación de archivos principalmente elimina las referencias y actualiza los metadatos. Para dispositivos zonificados, puede haber extensiones válidas en las zonas relevantes y Btrfs debe alejarlas antes de restablecer la zona.
Entonces podrías ver:
- El archivo ha sido eliminado;
Usedha disminuido;Device zone unusablesube temporalmente;Device unallocatedno aumenta sincrónicamente según la cantidad de eliminación;- El limpiador de fondo continúa generando E/S.
Esto no significa necesariamente que la eliminación haya fallado. Observe un ciclo de reclaim completo y controlado, y evalúe la evolución de los registros y de btrfs filesystem usage -T.
Si el valor no cambia durante mucho tiempo y al mismo tiempo se producen bloqueos más limpios, errores de transacción o tareas de estado D, se debe manejar de acuerdo con la falla de la ruta de recuperación en lugar de continuar eliminando una gran cantidad de datos.
Ejecutar balance gradualmente y solo después de recuperar espacio
El equilibrio moverá el grupo de bloques. La mayoría de las operaciones de equilibrio necesitan crear primero un nuevo grupo de bloques como espacio de trabajo, por lo que ejecutar el equilibrio sin un filtro directamente cuando el disco está lleno puede activar ENOSPC nuevamente.
No lo ejecutes de inmediato:
|
|
Primero confirme que no haya ningún balance en curso:
|
|
Bajo la premisa de que el registro es estable, se ha liberado espacio y el recuento de errores del dispositivo no ha aumentado, primero puede procesar el grupo de bloques completamente no utilizado:
|
|
usage=0 no requiere espacio de trabajo adicional y es el punto de partida de bajo riesgo para ENOSPC proporcionado por la documentación oficial de Btrfs.
Verificar después de completar:
|
|
El umbral bajo sólo se considera cuando tanto el espacio como los registros son estables:
|
|
Después de observar nuevamente, es posible mejorar para:
|
|
Estas cifras no son una receta fija que deba implementarse paso a paso. Cuanto mayor sea el umbral, más datos se podrán mover y más espacio de trabajo y E/S se necesitarán.
Si btrfs-cleaner, la eliminación de block groups o la ruta de finalización de zonas se han bloqueado antes, no trate balance como una reparación automática. Podría volver a entrar en rutas de código similares; investigue primero el problema del kernel.
Operaciones que deben evitarse en el disco afectado
No forzar un remount de lectura y escritura
evitar:
|
|
Si el kernel acaba de forzar que el sistema de archivos sea de solo lectura debido a un error, el montaje directo omitirá el límite de “guardar registro, desmontar y volver a evaluar” y, por lo general, no podrá eliminar la causa raíz del sistema de archivos de solo lectura.
No ejecutar un balance completo sin filtros
evitar:
|
|
Un equilibrio de disco completo necesita mover datos, lo que puede requerir más espacio temporal que la falla original.
No ejecute btrfs check --repair
evitar:
|
|
La documentación oficial de Btrfs advierte claramente: No utilice --repair a menos que el desarrollador o una persona con experiencia le informe de un error específico.
Si realmente necesita comprobar la estructura sin conexión, desmonte primero el sistema de archivos y utilice el modo de solo lectura predeterminado:
|
|
Pero en un sistema de archivos de 14 TB o 15 TB, esta verificación puede llevar mucho tiempo, consumir mucha memoria y generar lecturas continuas. Por lo general, esto no es necesario como primer paso cuando solo hay evidencia pura de ENOSPC.
No borre primero las estadísticas de errores del dispositivo
Evite ejecutar antes de guardar la evidencia:
|
|
La puesta a cero no reparará la unidad, los cables o el HBA; simplemente borrará la línea base de comparación.
No continuar con borrados y escrituras masivos al mismo tiempo
La superposición de eliminaciones de varios terabytes, recuperaciones de zonas y nuevas escrituras de varios terabytes en un SMR administrado por host puede ampliar significativamente la superficie de fallas.
Un proceso más confiable es:
|
|
Verificación después de recuperar espacio
Restaurar rw es solo el comienzo y no puede usarse como criterio de éxito final.
Verificar el estado del montaje
|
|
confirmar:
- El dispositivo fuente es correcto;
- El sistema de archivos es
btrfs; - Las opciones de montaje incluyen
rw; - No hay subvolúmenes ni particiones incorrectos montados.
Verificar la distribución espacial
|
|
No opte simplemente por Device zone unusable cero. Es más:
- Ya hay suficiente espacio disponible;
Device unallocatedo espacio asignable restaurado;- Los metadatos ya no se llevan al límite;
- No aparecen errores nuevos durante el reclaim.
Comprobar que los contadores de errores no aumenten
|
|
Comparar con la línea de base guardada después del error. Deje de reanudar escrituras grandes si write_io_errs, flush_io_errs, corruption_errs o generation_errs crecen.
Verifique que el kernel no vuelva a forzar el modo de solo lectura
|
|
Preste atención a los registros recién generados y no juzgue mal el error anterior de hace unas horas como una recurrencia.
Hacer pruebas de escritura a pequeña escala
Primero escriba en un directorio de prueba claro:
|
|
Elimine los archivos de prueba y envíelos nuevamente:
|
|
Luego verifique nuevamente los registros, el espacio y las estadísticas del dispositivo.
Pasar la prueba de 1GiB solo puede demostrar que las escrituras a pequeña escala son exitosas, pero no puede probar que las escrituras continuas de varios TB sean necesariamente estables. Las tareas formales deben reanudarse en pequeños lotes y monitorearse.
Programar scrub después de disponer de redundancia o copia de seguridad
Scrub lee todos los datos asignados y verifica las sumas de verificación, lo que puede llevar mucho tiempo. No ejecute equilibrar, copiar y eliminar inmediatamente en un disco lleno recién restaurado al mismo tiempo.
Después de confirmar que el sistema de archivos es estable y que hay copias de datos importantes, programe una ventana de mantenimiento independiente:
|
|
Compruébalo cuando termine:
|
|
Los datos del disco único single no tienen otro espejo para que Btrfs los repare automáticamente. El hecho de que Scrub pueda encontrar problemas de verificación no significa necesariamente que puedan solucionarse.
Cómo evitar volver a llenar el sistema de archivos
Establecer línea de parada de capacidad para tareas de escritura
No permita que el script de respaldo solo mire el código de salida del comando. Registre tanto antes como después de escribir:
|
|
Cuando el espacio disponible caiga por debajo de su umbral de mantenimiento, dejará de recibir nuevos datos y le avisará.
El umbral no solo debe calcularse en función de “cuánto espacio cabe en el siguiente archivo”, sino que también debe incluir espacio para COW, metadatos y recuperación de zona.
Escalonar eliminaciones y escrituras grandes
recomendar:
|
|
No programe rsync, eliminación de instantáneas, limpieza y equilibrio para competir por E/S durante la misma ventana de mantenimiento.
Mantener una lista externa de checksums para los datos archivados
Puede generar una lista de verificación para directorios importantes y copiar la lista a otro disco:
|
|
El formato de manifiesto de texto anterior aún puede resultar incómodo de manejar cuando los nombres de archivos contienen nuevas líneas; Si la fuente de datos produce nombres de archivos especiales, se debe utilizar un proceso de manifiesto dedicado que admita la delimitación NUL.
No trate un sistema de archivos de un solo disco como copia de seguridad
Las sumas de comprobación de Btrfs pueden detectar daños silenciosos, pero los perfiles de datos de un solo disco generalmente no tienen una segunda copia de los datos para recuperarse.
Los datos del HC620 también deben incluir al menos:
- Otra copia del disco local;
- Otra máquina o copia externa;
- Almacenamiento de objetos periódicamente verificable o réplicas fuera de línea.
Preguntas frecuentes
Device zone unusable es muy grande. ¿Significa que el disco está roto?
incierto. Representa el espacio que se escribió en el pasado y al que ya no se hace referencia debido a COW, pero que aún no se ha reclamado ni se ha restablecido la zona.
También debe consultar Device unallocated, el uso de datos y metadatos, los registros del kernel, las tendencias de reciclaje y los recuentos de errores del dispositivo.
¿Se puede restaurar la misma capacidad inmediatamente después de eliminar un archivo?
No garantizado. La eliminación primero cambia la referencia del sistema de archivos. Es posible que la zona subyacente también necesite mover datos válidos y restablecerse.
Si el montaje normal funciona, ¿se puede volver a llenar el disco?
no puedo. Primero debe lograr un margen significativo, confirmar que los registros y los recuentos de errores sean estables, luego realizar pruebas a pequeña escala y, finalmente, reanudar el negocio en lotes.
write_io_errs es 0, ¿se descarta el problema del disco duro?
No se puede descartar por completo. Sólo muestra que no hay errores de escritura para este tipo de recuento de persistencia registrado por Btrfs; También verifique los registros de la capa de bloques del kernel, SMART, HBA, cables y fuente de alimentación.
¿Puedo usar mount -o recovery?
No piense en el recovery del antiguo tutorial como un interruptor de reparación universal. La opción actual de montaje de rescate de Btrfs tiene errores aplicables claros y, por lo general, requiere un montaje de solo lectura, que debe seleccionarse en función del registro real.
¿Por qué df informa ENOSPC cuando muestra que todavía hay espacio?
El COW, el grupo de bloques de datos y metadatos, la reserva de transacciones y la recuperación de zonas de Btrfs requieren espacio. Las estimaciones disponibles a nivel de archivo presentadas por df no expresan completamente estas restricciones internas.
¿Debo cambiar los metadatos de DUP a sencillos?
No realice cambios temporales en el perfil sólo para ahorrar espacio. La conversión de perfiles en sí requiere mover grupos de bloques, lo que requiere espacio de trabajo y muchas E/S; Los perfiles admitidos por el modo por zonas también están sujetos a las versiones del kernel y de la herramienta.
Por qué un balance con usage=0 es relativamente seguro
Debido a que solo escanea y recupera grupos de bloques completamente no utilizados, la documentación oficial indica que este filtro no requiere espacio de trabajo adicional.
“Relativamente seguro” no significa que sea adecuado para todos los fallos. Si los registros muestran una ruta de reclaim bloqueada o un error estructural, detenga la operación y analice primero la causa.
¿Es posible cortar la energía directamente y reiniciarla?
Si el sistema todavía responde, guarde los registros, detenga las tareas, espere las transacciones necesarias y desmonte normalmente. Un corte de energía forzado aumenta la incertidumbre sobre las escrituras sin confirmar y complica el análisis del fallo.
Si la tarea del kernel está en el estado D ininterrumpible durante mucho tiempo y la máquina no puede apagarse normalmente, debe guardar tantos registros como sea posible a través de otra máquina o consola remota antes de evaluar el riesgo de reiniciar.
Lista de actuación paso a paso
Ejecutar en orden, no saltar para equilibrar o reparar:
|
|
Resultados que deben recopilarse para continuar el diagnóstico
Si aún no puede confirmar a qué categoría pertenece, oculte información confidencial, como números de serie, al recopilar el siguiente resultado, pero no elimine el contexto de error:
|
|
Con base en estos resultados, el siguiente paso generalmente puede converger hacia:
- Simplemente llénalo y podrás hacer espacio bajo control;
- la recuperación de zona no tiene espacio de trabajo ni bloqueo de ruta de recuperación;
- La transacción Btrfs se cancela y es necesario rastrear el primer error;
- Fallo real de E/S en HC620, HBA, cable o fuente de alimentación;
- Hay un error de verificación o estructura en el sistema de archivos y los datos deben ser rescatados primero y luego manejados por personal experimentado.
Referencias
- Hoja de datos de Western Digital Ultrastar DC HC620
- Documento oficial de Btrfs: modo zonificado
- Documento oficial de Btrfs: sistema de archivos btrfs
- Documento oficial de Btrfs: btrfs-balance
- Documento oficial de Btrfs: dispositivo btrfs
- Documento oficial de Btrfs: btrfs-check
Cuando un HC620 lleno queda en solo lectura, la prioridad no es conseguir que vuelva a mostrar rw cuanto antes. Primero determine por qué el kernel activó el modo de protección. Solo si las pruebas apuntan claramente a un ENOSPC ordinario debe conservar los registros y las copias de datos, y después liberar espacio de forma controlada. Si aparecen errores de E/S, checksum, estructura o zone write pointer, detenga las escrituras y priorice el rescate de datos y el diagnóstico de la ruta de hardware.