0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Rocky Linux9 (RHEL9)でqcow2形式のディスクイメージをマウントして中のファイルを操作したい

Posted at

どういう状況?

CentOS7のkvm上で動かしていたVM(qcow2イメージ)をRocky9にマイグレーションしたら、NIC周りが変わってIPが割り当てられない。Ubuntu18.04なのでserialも繋がらないので、/etc/netplan以下のファイルを 書き換える必要が出た。

やり方(qcow2の中味がraw installedな場合)

(以下全部rootでのコマンド)
# nbdのカーネルモジュールをロード(たぶん明示的に淹れなくても入ってる)
% modprobe nbd max_part=8

# qemu-nbdで接続
% qemu-nbd --connect=/dev/nbd0 [マウントしたいqcow2のパス]

# ブロックデバイスのパーティションを確認、LVMじゃないならLinuxとか出るはず
% fdisk /dev/nbd0 -l
(省略)

#普通にマウントすればよい
% mount /dev/nbd0p2  /mnt/hoge

# ここから後処理、必ずやること。でないとqcow2がロックされたままになる
% umount /mnt/hoge
% qemu-nbd -d /dev/nbd0
/dev/nbd0 disconnected

やり方(qcow2の中味がLVM Partitionな場合)

(以下全部rootでのコマンド)
# nbdのカーネルモジュールをロード(たぶん明示的に淹れなくても入ってる)
% modprobe nbd max_part=8

# qemu-nbdで接続
% qemu-nbd --connect=/dev/nbd0 [マウントしたいqcow2のパス]

# ブロックデバイスのパーティションを確認、LVMならLinux LVMっていうPartition Typeになってる
% fdisk /dev/nbd0 -l
Disk /dev/nbd0: 200 GiB, 214748364800 bytes, 419430400 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x390c36ae

Device      Boot Start       End   Sectors  Size Id Type
/dev/nbd0p1 *     2048 419428351 419426304  200G 8e Linux LVM

# 重要。RHEL7や8だと勝手にlvm にdetectされたけど、9は明示的にこうしないとダメぽい。
% lvmdevices --adddev /dev/nbd0p1

# LVMの管理下になったので、vgscanで状況の確認
% vgscan
  Devices file /dev/nbd0 is excluded: device is partitioned.
  Found volume group "rl" using metadata type lvm2
  Found volume group "ubuntu1804golden-vg" using metadata type lvm2
  
# vgchangeで論理ボリュームをアクティブにする
% vgchange -ay ubuntu1804golden-vg
  Devices file /dev/nbd0 is excluded: device is partitioned.
  2 logical volume(s) in volume group "ubuntu1804golden-vg" now active
  
# /dev/mapper以下にLVMの中味のパーティションが出てくる。この例だとubuntu1804golden-root
% ls /dev/mapper
control  rl-home  rl-root  rl-swap  ubuntu1804golden--vg-root  ubuntu1804golden--vg-swap_1

# hogeにマウント。hogeはお好きなディレクトリに。ubuntu1804golden--vg-rootもインストールしたときの命名で変わるから注意ね
% mount /dev/mapper/ubuntu1804golden--vg-root /mnt/hoge

# ここから後処理、必ずやること。でないとqcow2がロックされたままになる
% umount /mnt/hoge
% vgchange -an ubuntu1804golden-vg
  0 logical volume(s) in volume group "ubuntu1804golden-vg" now active
% qemu-nbd -d /dev/nbd0
/dev/nbd0 disconnected
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?