###目的:
ノートPCなど,既にWindowsの入ったHDDを,高速化の為にSSDに移行したい
###課題:
ddでHDDのMBRやCドラ,Dドラを一括コピーすると,パーティション情報がSSDもHDDと同じアライメントになってしまい,SSDの性能が活かせない
###解決方法:
MBRからパーティション情報以外をddでコピー,その後ntfscloneでパーティションごとにコピー
####使う物
・Windowsの入ったPCのHDD(HDD1とする)(SSDに換装したいPC)
・Linuxの入ったPC(自分はarchlinuxを使用)
・HDDから入れ替えたいSSD
・SATA接続のお立ち台(2枚刺さるやつ)
・容量デカめの適当なHDD(HDD2とする)(ntfscloneの出力先として使用)
--
例として,
sdb:HDD1(コピー元)
sdb1:システム領域(MBR含む),sdb2:Cドライブ,sdb3:Dドライブ
sdd:HDD2(一時バックアップ先)
sdc1:バックアップ領域
sdd:SSD(コピー先)
sdd1::システム領域(MBR含む),sdd2:Cドライブ,sdd3:Dドライブ
とする.
--
###手順1(吸い出し)
まずお立ち台に,HDD1とHDD2をドッキング
--
HDD2を適当にマウント(HDD1はマウントしなくてよい)
sudo mount /dev/sdd1 /mnt/disk0 #適当に
--
HDD1のパーティションの確認
sudo fdisk -d /dev/sdb
--
先頭のほうのセクタをddで吸い出す
sudo dd if=/dev/sdb of=/mnt/disk0/sdb.mbr bs=446 count=1 #bs=446がキモ.パーティション情報はコピーしていない.
--
sdb1(Cドラ)とsdb2(Dドラ)をntfscloneで吸い出す
#ntfsclone --save-image --output 出力先 出力元
sudo ntfsclone --save-image --output /mnt/disk0/sdb1.ntfsclone /dev/sdb1
sudo ntfsclone --save-image --output /mnt/disk0/sdb2.ntfsclone /dev/sdb2
###手順2(書き戻し)
お立ち台からHDD1(コピー元)を抜く
お立ち台にSSD(コピー先)を刺す(SSDはマウントしなくてよい)
接続したSSDは前述の通りsddと仮定
--
SSDのパーティションを作る
sudo fdisk /dev/sdd
sdd1,sdd2を作成
(以下略) 適宜アライメントしてください
--
作ったパーティションをNTFSにフォーマット
sudo mkfs.ntfs -Q -v /dev/sdd1 #-Qはクイックフォーマット,-vは進捗と詳細を表示
sudo mkfs.ntfs -Q -v /dev/sdd2
--
先頭のほうのセクタをddでHDD2からSSDに書き戻す
sudo dd if=/mnt/disk0/sdb.mbr of=/dev/sdd
--
SSDにパーティションテーブルができたことを確認する
sudo fdisk -l /dev/sdd
--
sdb1とsdb2を書き戻す
#ntfsclone --restore-image --overwrite 出力先 出力元
sudo ntfsclone --restore-image --overwrite /dev/sdd1 /mnt/disk0/sdb1.ntfsclone
sudo ntfsclone --restore-image --overwrite /dev/sdd2 /mnt/disk0/sdb2.ntfsclone
###手順3(最後に)
お立ち台からSSDとHDD2を取り外し,SSDをノートPCに換装