必要なもの:LiveCDもしくはLiveUSB、現在使用しているデータ量(ディスクサイズではない)より大きいDisk(パーティション)
スーパーユーザーで作業します。
0.事前準備
LiveCDもしくはLiveUSBを準備します。現在使用しているデータ量よりも大きいext4フォーマット済みのパーティションを用意します。
1.rsyncでコピー
LiveCDで起動して、移行前、移行後のパーティションをそれぞれマウントします。
マウントできたらrsyncでコピーします。予めパーティションにラベルを付けておくと、UUIDではなくラベルでアクセスできるので便利です。ここでは、移行前のパーティションをSANSSD、移行後のパーティションをDISK0としています。
rsync -aAXHxShv --append --partial --timeout=600 --bwlimit=0
--stats --progress --preallocate /media/user/SANSSD/ /media/user/DISK0
2.DISK0/etc/fstab 修正
fstab(一部抜粋)
# <file system> <mount point> <type> <options> <dump> <pass>
#
LABEL=DISK0 / ext4 errors=remount-ro 0 1
3.grub2のインストール
新しいDiskにgrub2をインストールします。/dev /sys /procを新しいパーティション配下へbindして、chrootしてからやります。予め、「ls /dev/disk/by-label」で、sd?であるかを確かめてからします。ここでは、DISK0が、sdbにあるとしました。
mount --bind /proc /media/user/DISK0/proc
mount --bind /sys /media/user/DISK0/sys
mount --bind /dev /media/user/DISK0/dev
chroot /media/user/DISK0/
grub-install /dev/sdb
update-grub
4.LiveCDを終了して、電源を切り、Diskを取り換えて再起動します。電源を切ってDiskを取り換えなくても、再起動して、BIOSでブートディスクを指定してもいいです。