На программном зеркальном raid-массиве из двух SSD-дисков /dev/md2 располагаются три logical volumes - swap, ZIL для zfs (кэш записи) и L2ARC - кэш чтения.
Проверим raid-массив и посмотрим число “неправильных” блоков :
echo 'check' >/sys/block/md2/md/sync_action cat /sys/block/md2/md/mismatch_cnt
Если число несовпадающих блоков не 0, то отключаем кэши и swap:
sudo zpool status -P sudo zpool remove pve-data /dev/pve/zfs-zil sudo zpool remove pve-data /dev/pve/zfs-l2arc sudo swapoff -a
Запускаем исправление массива и его проверку:
echo 'repair' | sudo tee /sys/block/md2/md/sync_action watch cat /proc/mdstat echo 'check' | sudo tee /sys/block/md2/md/sync_action watch cat /proc/mdstat
И снова смотрим число несовпадающих блоков:
cat /sys/block/md2/md/mismatch_cnt
Теперь там должен быть 0.
Возвращаем обратно кэши и включаем обратно swap:
zpool add pve-data log /dev/pve/zfs-zil zpool add pve-data cache /dev/pve/zfs-l2arc swapon -a
Discussion