次のコマンドを使用して、/ dev/vda
のdd
イメージを作成しました。
ssh [email protected] "dd if =/dev/vda" | dd of = /home/backup/vda.img
転送したローカルUbuntuサーバーにマウントできません。
これはdmesg | tail
で取得します:
[763158.222159] EXT4-fs error (device loop0): ext4_map_blocks:504: inode #8:block 10541546: comm mount: lblock 23018 mapped to illegal pblock (length 1)
[763158.222299] jbd2_journal_bmap: journal block not found at offset 23018 on loop0-8
[763158.222367] JBD2: bad block at offset 23018
[763158.222581] JBD2: recovery failed
[763158.222588] EXT4-fs (loop0): error loading journal
file
でチェックアウトしようとすると、次のようになります。
vda.img:データ
それが何であるかについて何か考えはありますか?
Svenが提案したようにkpartxを使用すると、次のようになります。
kpartx -l /home/backup/vda.img
ループが削除されました:/ dev/loop0
システムを再起動して、コマンドを再試行しました。
kpartx -lv /home/backup/vda.img
ioctl:LOOP_CLR_FD:デバイスまたはリソースがビジーです
ループを削除できません:/ dev/loop0
そしてdmesgで|私が得る尾
[73.445903]デバイスマッパー:uevent:バージョン1.0.3
[73.446574]デバイスマッパー:ioctl:4.22.0-ioctl(2011-10-19)初期化:[email protected]
私は次の方法で問題を修正することができました:
コピーしたいパーティションのサイズを確認してから、バックアップサーバー上にそのサイズのローカルファイルを作成し、次のコマンドを使用してその中にパーティションを作成しました。
fallocate -l 85899345920 vda.img
fdisk -H 16 vda.img
kpartx -a vda.img
mount/dev/mapper/loop1p1/mnt/test/-t ext4
次に、ddを使用してサーバーからバックアップパーティションにデータをコピーしました。
周りのすべてをチェックし、すべてがうまくいくようです。
イメージファイル内にパーティションをマウントする必要がある可能性があります。これはkpartx
で実行できます。
kpartx -l /path/to/image
ファイル内のパーティションを一覧表示し、
kpartx -a /path/to/image
それらを/dev/mapper/loopXpY
(X
とY
は異なります)に追加し、そこからmount
でマウントできます。
詳細については、man kpartx
を参照してください。