2015-12-08

ubuntu 大硬碟 複製 轉移 到 小硬碟(ssd)

原理,大硬碟縮小到小硬碟SSD大小後,用分割區復製的方式轉到SSD,再用grub修復mbr區
1. SSD裝入後,用 live cd 開機。
2. 用gparted 的功能把大碟 縮到 SSD容量再小一點點, 再把小硬碟分割。
ex: 大碟1t、SSD 128G, 大碟 切 500G,300G ,用量為 10G, 30G , 將大碟第一個縮到48G ,再縮第二區 48G ,
PS:最好都移到最左邊。 
再把 SSD 128G ,切割為 55G ,55G ,記得把SSD 第一個flag 設為 boot

3. 用 dd 的方式複製 分割區 ex:大碟為 sda 小碟為 sdb。(ps:測試過,用mount 的方式在 cp 或 rsync 複製到新分割也可以,這樣大碟就不用縮小分割了)
dd if=/dev/sda1 of=/dev/sdb1
dd if=/dev/sda2 of=/dev/sdb2
4.  還原 sdb 的 mbr
cd /
sudo -s -H
mount -t ext4 /dev/sdb1 /mnt
mount -t proc proc /mnt/proc
mount -t sysfs sys /mnt/sys
mount -o bind /dev /mnt/dev
chroot /mnt  /bin/bash
5. 記得改 /dev/fstab 中的 資料,如:UUID=xxxxxx  改成 /dev/sda1 ,寫入mbr
grub-install /dev/sdb
update-grub
6.關機,拿出live CD 跟 大碟,把 SSD 放第一個,開機,完成。



參考:
http://askubuntu.com/questions/409204/how-to-clone-to-a-smaller-harddisk
https://linuxnorth.wordpress.com/2012/12/31/cloning-a-hard-drive-to-a-smaller-ssd/
http://wiki.ubuntu-tw.org/index.php?title=HowtoRestoreGrub