Stateless-CentOS7をクローンコピーする

Stateless-CentOS7を別のHDDやUSBメモリにクローンコピーして起動する。

前提:
新しいHDD(またはUSBメモリ)がsdbで認識されており、下記のようにパーティション作成済み/フォーマット済みとする。
 sdb1:ext4 (xfsでもOK)
 sdb2:swap
selinuxは一旦無効にすること。
 /etc/selinux/configにて、SELINUX=disabled とし、再起動。

コピー:

cd /mnt
mkdir org new
# Stateless-CentOS7のルート(/)はro。別ポイントにマウントするには一旦rwにする必要がある。
mount -oremount,rw /
mount /dev/sda1 org
mount /dev/sdb1 new
#rsync -a org/ new/  ## cp -aの方が断片化せずディスク容量は少なくて済む。リード性能はどっちがいいか?
cp -a org/* new/
umount org
mount -oremount,ro /

chroot

mount -o bind /dev new/dev
mount -t proc proc new/proc
mount -o bind /sys new/sys
chroot new/

grub調整:

# 新HDDの先頭領域の調整
grub2-install --no-floppy /dev/sdb
# 新HDDのgrub.cfgを更新
grub2-mkconfig -o /boot/grub2/grub.cfg
# 念のため新HDDのinitrdも更新
dracut -f

その他の調整:

# /etc/fstabの調整# ゴミがあれば削除
 rm -rf /etc/udev/rules.d/*
  …

終了:

# chroot環境を抜ける
exit
# アンマウント
umount new/*
umount new