kvmで ddイメージの容量を減らす

5 4月

ddイメージだと減少ができないみたい。

なので 少ない dd イメージを作成して(lvmなどの構成を同じにする)、そこに dump restoreする感じ。

————————————————————————————-
50G を 30G へ
————————————————————————————-
losetup -f
losetup /dev/loop0 sl63base50G.img
kpartx -a /dev/loop0
lvchange -ay /dev/vgx/root
lvchange -ay /dev/vgx/home
mkdir -p /tmp/root/boot /tmp/root/root /tmp/root/home
mount /dev/vgx/root /tmp/root/root
mount /dev/mapper/loop0p1 /tmp/root/boot
mount /dev/vgx/home /tmp/root/home

dump -0uf – /tmp/root/root | gzip -c > /home/vmdata/bk/sl63base-root.gz
dump -0uf – /tmp/root/home | gzip -c > /home/vmdata/bk/sl63base-home.gz
dump -0uf – /tmp/root/boot | gzip -c > /home/vmdata/bk/sl63base-boot.gz

umount /tmp/root/boot/
umount /tmp/root/home/
umount /tmp/root/root

lvchange -an /dev/vgx/root
lvchange -an /dev/vgx/home

kpartx -d /dev/loop0
losetup -d /dev/loop0

————————————————————————————-
30Gのddイメージを作成してOSを導入しておく
dd if=/dev/zero of=sl63base.img bs=1M count=30000
————————————————————————————-
losetup -f
losetup /dev/loop0 sl63base.img
kpartx -a /dev/loop0
lvchange -ay /dev/vgx/root
lvchange -ay /dev/vgx/home

mkdir -p /tmp/root/boot /tmp/root/root /tmp/root/home
mount /dev/vgx/root /tmp/root/root
mount /dev/mapper/loop0p1 /tmp/root/boot
mount /dev/vgx/home /tmp/root/home
cd /tmp/root/home
gzip -dcf /home/vmdata/bk/sl63incsbase-home.gz | restore -rv -f –
cd /tmp/root/boot
gzip -dcf /home/vmdata/bk/sl63incsbase-boot.gz | restore -rv -f –
cd /tmp/root/root
rm -rf /tmp/root/root/*
gzip -dcf /home/vmdata/bk/sl63incsbase-root.gz | restore -rv -f –

fstabの中身に UUIDが記述されている場合
vi /tmp/root/root/etc/fstab
を /dev/vda1 等に変更するか、正しいUUIDを記述する。

umount /tmp/root/boot/
umount /tmp/root/home/
umount /tmp/root/root

lvchange -an /dev/vgx/root
lvchange -an /dev/vgx/home

kpartx -d /dev/loop0
losetup -d /dev/loop0

コメントを残す