Había hecho una pregunta sobre ext4lazyinit aquí . Por todo lo que he leído y entendido, simplemente le permite comenzar a usar el disco duro sin crear todos los inodos para su sistema de archivos.
La única manera que sabe o medida lata está monitoreando ext4lazyinit
en iotop
. ¿Hay alguna forma de obtener su progreso como porcentaje?
Respuestas:
Verifique esta discusión del parche . Puede inicializar el sistema sin lazyinit, pero no puede medirlo. Si tienes tiempo para esperar, solo espera. Puede probar el parche de la discusión, pero según Patchwork tiene el estado "rechazado".
fuente
Parece que he encontrado una manera de aproximar el progreso de ext4lazyinit.
TL; DR: vea la secuencia de comandos a continuación.
Este método supone que el disco nunca se ha desconectado (ni se ha reiniciado el sistema) desde la primera vez que se montó la partición, y que ha escrito exactamente la misma cantidad de datos que la que está en uso en la partición (por lo tanto, no hay eliminación) o modificación de archivos).
Paso 1 : Compare el tamaño de la partición en fdisk (convertido a kiB) con el número de bloques 1K que se muestran en df. Reste (número de bloques 1K) de (tamaño de partición en kiB) para obtener (tamaño aproximado de la tabla de inodo).
EDITAR: Ejemplo, fdisk:
df:
11720976351 sectores * 512 bytes / sector / 1024 = 5860488175.5 kiB (casi 5.5 TiB, como dice fdisk). Menos 5813233164 de df es igual a 47255011.5 kiB (unos 45 GiB) para el tamaño aproximado de la tabla de inodo.
Paso 2 : Obtener (kiB total escrito en la partición):
Elija la línea correcta para su partición y conviértala a kiB.
EDITAR: ejemplo:
Usando sdd1 en mi caso, kiB total escrito = 2530108940 sectores * 512 bytes / sector / 1024 = 1265054470 kiB (casi 1.2 TiB).
Paso 3 : solo es necesario si ya ha escrito datos en el sistema de archivos. Reste (número de bloques 1K UTILIZADOS, que se muestran en df) de (kiB total escrito en la partición) para obtener (kiB aproximado escrito en la tabla de inodo).
EDITAR: ejemplo: kiB aproximado escrito en la tabla de inodo = 1265054470 (desde el paso 2) - 1217095176 (ver salida de df en el paso 1) = 47959294 kiB (45.7 GiB)
Paso 4 : Divida (aproximadamente kiB escrito en la tabla de inodo) por (tamaño aproximado de la tabla de inodo en kiB) y multiplique por 100 para obtener el progreso como un porcentaje.
EDITAR: ejemplo: progreso aproximado = 47959294 / 47255011.5 * 100% = 101.5%
Guión
O para escribir eso como una secuencia de comandos parcial (donde me niego a escribir una llamada a fdisk, por razones de seguridad):
Llame con $ 1 = "nombre de partición" (por ejemplo, sdd1), $ 2 = "sectores de partición de acuerdo con fdisk", $ 3 = "punto de montaje sin barra inclinada"
Resultados de la prueba
Solo he probado mi método una vez. Preparar:
Partición de 6 TB
cifrado usando cryptsetup
sistema de archivos creado con parámetros predeterminados excepto -m 0
279 GiB de archivos escritos en la partición antes de que ext4lazyinit se complete.
Resultado : una lectura del 99,7% en el momento de la finalización :-)
EDITAR: el mismo disco, después de escribirle casi otro TiB de datos, ahora produce una estimación del 101.5%. Lo suficientemente preciso como para ser útil, creo.
fuente