He tenido varios problemas con mis sistemas de archivos ext4 que parecen deberse ajbd2llevar un diario. Hice una publicación relacionadaaquíy lo estoy reformulando con la esperanza de que alguien pueda ayudar.
Para un ejemplo mínimo, comienzo con una memoria USB de 8 GB vacía y usoseparadopara crear una partición ext4. El comando utilizado por gparted al crear el sistema de archivos ext4 es:
mkfs.ext4 -j -O extent -L DataTraveler8gb /dev/sde1
Compruebo el sistema de archivos con gparted:
e2fsck -f -y -v /dev/sde1
y lo monto:
sudo mount /dev/sde1 /media/test
El disco está vacío, pero el registro en diario está muy activo en este disco (/dev/sde1). Los otros discos son SSD ext4 formateados de manera similar. Una instantánea de iotop:
% sudo iotop -oPa
Total DISK READ: 0.00 B/s | Total DISK WRITE: 2027.21 K/s
PID PRIO USER DISK READ DISK WRITE SWAPIN IO COMMAND
262 be/3 root 0.00 B 56.00 K 0.00 % 0.18 % [jbd2/sda1-8]
29069 be/3 root 0.00 B 0.00 B 0.00 % 0.16 % [jbd2/sde1-8]
891 be/3 root 0.00 B 4.00 K 0.00 % 0.03 % [jbd2/sdc1-8]
¿Qué está haciendo jbd2 con /dev/sde1?
Si sigo los mismos pasos con un disco más grande de 2 TB, iotop indica que jbd2 escribe constantemente en este disco vacío a una velocidad de Mb/s tan pronto como lo monte.
En los otros discos, que tienen el sistema operativo y /home, intenté encontrar si los procesos están modificando algún archivo para causar este comportamiento, pero no pude encontrar ninguno. También moví muchos de los procesos intensivos en disco para usar tmpfs. Y no usó ningún momento.
Tengo otro disco duro que no es SSD en esta máquina, /dev/sdb, que también es ext4 pero no fue formateado por gparted (me lo dio un compañero de trabajo). No aparece en iotop. Entonces supongo que hay un problema con gparted.
Se agradece cualquier sugerencia. Además, sería fantástico recibir algún consejo sobre cómo modificar las particiones existentes para solucionar el problema sin tener que empezar desde cero.
Hay algunas publicaciones relacionadas con jbd2 pero no ayudaron (por ejemplo.aquí).
Respuesta1
Parece que ext4 realiza su 'formateo rápido' posponiendo gran parte de su inicialización hasta que se monta (¿la opción uninit_bg, tal vez?) y sospecho que jbd2 está haciendo esto después de formatear la unidad por primera vez. uno de los comentariosaquísugirió que jbd2 escriba en la partición después de la creación durante un tiempo proporcional a su tamaño, y sugirió 10 minutos por 200 GB, lo que indicaría 50 minutos por TB. Ayer formateé una unidad ext4 de 3 TB y jbd2 estuvo escribiendo durante mucho tiempo, pero ahora se detuvo.
btrfs no hace esto, por cierto, pero todavía no confío en él para unidades externas; por ejemplo, necesita un kernel reciente (creo que 3.4+) o el kernel fallará (y posiblemente perderá datos) si quita la unidad. sin desmontarlo primero (lo que por supuesto sucede si pierde energía).