In my previous post, I replaced my NVME boot disk on our media server thinking that the disk was defective because the file system (EXT4-fs) was reporting numerous htree_dirblock_to_tree:1080
errors.
The errors continue to persist with the new disk, so I can eliminate the possibility of hardware as the cause of the issue.
I noticed that the htree_dirblock_to_tree:1080
errors were caused by the tar
command and the time in which these errors occur coincided when the media server is being backed up. Apparently, the backup process is causing these errors with the tar
command.
This backup process has remained unchanged for quite some time and has worked really well for us. I guess for some reason there is a bug in the kernel
or in the tar
command that is not quite compatible with NVME devices.
I had to resort to finding an alternative backup methodology. I ended up using the rsync
method instead.
sudo rsync --delete \
--exclude 'dev' \
--exclude 'proc' \
--exclude 'sys' \
--exclude 'tmp' \
--exclude 'run' \
--exclude 'mnt' \
--exclude 'media' \
--exclude 'cdrom' \
--exclude 'lost+found' \
--exclude 'home/kang/log' \
-aAXv / /mnt/backup
It looks like this method is faster and can perform incremental backup. However, instead of backing up to an archive file, which I later need to extract and prepare during the restoration process, I have to back it up to a dedicated backup device. Since the old NVME disk is perfectly fine, I reused it as my backup device. I have partitioned this backup device in the same layout as the current boot disk.
Device Start End Sectors Size Type
/dev/sdi1 2048 2203647 2201600 1G Microsoft basic data
/dev/sdi2 2203648 1921875967 1919672320 915.4G Linux filesystem
/dev/sdi3 1921875968 1953523711 31647744 15.1G Linux swap
The only exception is that the first partition is not marked as boot
and esp
, so during the restoration process I will have to mark that partition accordingly with the parted
command by using the following commands:
set 1 boot on
set 1 esp on
The idea is that at 3am every night/morning, I will backup the root filesystem to the second partition of the backup drive. If anything happens with the current boot disk, the backup drive can act as an immediately available replacement, after a grub-install
preparation as mentioned in the previous article.
Let us see how this new backup process works and hopefully, we can bid a final farewell to the htree_dirblock_to_tree:1080
errors!
Update: 2023-12-22
It looks like even with the rsync
command, the htree_dirblock_to_tree:1080
errors still came back during the backup process. I decided to upgrade the kernel from vmlinuz-5.15.0-91-generic
to vmlinuz-6.2.0-39-generic
. Last night (2023-12-23 early morning) was the first backup after the kernel upgrade, and no errors were recorded. I hope this behavior persists and it is not a one-off.