CentOS7でLVMスナップショットとxfsdumpを使ってバックアップを取得しようとしたところ
# xfsdump -J -l 0 - /dev/VolGroup01/root_snap 2>> backup_root.log | cat | gzip > /backup/root.dump.gz
xfsdumpコマンドの実行ログに
# tail -f backup_root.log
<略>
xfsdump: version 3.1.4 (dump format 3.0)
xfsdump: ERROR: /dev/VolGroup01/root_snap does not identify a file system
xfsdump: usage: xfsdump [ -a (dump DMF dualstate files as offline) ]
<略>
とエラーが出力されました。指定したスナップショット領域が見つからないとのこと。
dumpコマンドでは認識してくれるのにおかしいなーと原因を調べたところ、、、ありました。
xfsdump does not dump unmounted filesystems.
(翻訳:xfsdumpはアンマウントファイルシステムをダンプしません。)
バグだそうです。
というわけで、LVMのスナップショットとxfsdumpコマンドでバックアップを取得する際は事前にスナップショット領域をマウントします。
# mkdir /mnt/root_snap
# mkdir /mnt/home_snap
# mount -t xfs -o ro,nouuid /dev/VolGroup01/root_snap /mnt/root_snap
# mount -t xfs -o ro,nouuid /dev/VolGroup01/home_snap /mnt/home_snap
この状態でもう一度xfsdumpでバックアップを取得すると
# xfsdump -J -l 0 - /dev/VolGroup01/root_snap 2>> backup_root.log | cat | gzip > /backup/root.dump.gz
# tail -f backup_root.log
<略>
xfsdump: dump size (non-dir files) : 3853853880 bytes
xfsdump: dump complete: 439 seconds elapsed
xfsdump: Dump Status: SUCCESS
正常にバックアップが取得できました。
お疲れ様でした。