ext4 jbd2 журналирование активно даже в пустой файловой системе

7

У меня возникло несколько проблем с файловыми системами ext4, которые, по-видимому, связаны с журналом jbd2 . Я сделал связанный пост здесь и перефразировал его с надеждой, что кто-то может помочь.

Для минимального примера я начинаю с пустого USB-накопителя 8 ГБ и использую gparted для создания одного раздела ext4. Команда, используемая gparted при создании файловой системы ext4:

mkfs.ext4 -j -O extent -L DataTraveler8gb /dev/sde1

Я проверяю файловую систему с gparted:

e2fsck -f -y -v /dev/sde1

, и я монтирую его:

sudo mount /dev/sde1 /media/test

Диск пуст, но ведение журнала очень активно на этом диске (/ dev / sde1). Другие диски - это твердотельные диски ext4, отформатированные аналогично. Снимок 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]

Что делает jbd2 с / dev / sde1?

Если я следую тем же шагам с большим диском 2Tb, iotop указывает, что этот пустой диск постоянно записывается jbd2 со скоростью Mb / s, как только я его смогу.

На других дисках, у которых есть ОС и / home, я попытался найти, если какие-либо файлы изменяются процессами, чтобы вызвать это поведение, но не могли найти их. Я также переместил многие из процесса с интенсивным диском, чтобы использовать tmpfs. И использовали noatime.

У меня есть другой жесткий диск без SSD на этом компьютере, / dev / sdb, который также является ext4, но не был отформатирован gparted (данный мне соавтором). Он не отображается в iotop. Поэтому я предполагаю, что проблема с gparted.

Любые предложения приветствуются. Также любые советы по изменению существующих разделов для исправления проблемы без необходимости запускать с нуля были бы замечательными.

Есть несколько сообщений, связанных с jbd2, но они не помогли (например, здесь ).     

задан Paul 07.04.2012 в 15:23
источник

1 ответ

6

Похоже, что ext4 делает свой «быстрый формат», поставив много своей инициализации до тех пор, пока он не будет установлен (опция uninit_bg, возможно?), и я подозреваю, что jbd2 делает это после первого форматирования диска. Один из комментариев здесь предположил, что jbd2 записывает в раздел после создания в течение времени, пропорционального его размеру, и предложил 10 минут на 200 ГБ, что указывает на 50 минут на ТБ. Вчера я отформатировал накопитель ext4 3TB, и jbd2 долгое время писала, но теперь он остановился.

btrfs этого не делает, кстати, но я еще не верю этому в отношении внешних дисков - например, вам нужно последнее ядро ​​(я думаю, что 3.4+), или ядро ​​будет oops (и, возможно, потерять данные), если вы удалите привод, не отключая его сначала (что, конечно, происходит, если он теряет мощность).

    
ответ дан rocko 01.07.2012 в 21:04