自作PC系でお小遣い稼ぎをしていたため、
これまで(SATA)SSD換装を
何十回もやってきましたが、
M.2(NVMe)SSDの換装で躓きました。
私はSSD換装をする際は、
EaseUS(イーザス)を使用しています。
今回、内蔵してあるM.2(NVMe)SSDが、
256GBぽっちしかなかったので、
これを1TBに変更したかったわけです。
買った1TBのM.2(NVMe)SSDを外付けして、
いつも通りにクローンを作成しようとしたら、
以下のように問題が発生しました。

「セクタサイズの異なるディスク間では、
NTFS/FAT32パーティションしか復元できません。
それ以外のパーティションは復元できませんが続けますか?」
だそうです。
ディスクのセクタサイズが異なるから
クローン作っても動作保証しないぞ
ということです。
自分の目で確認するために、
まずは内蔵SSDと外付けSSDの
セクタサイズを各々確認してみます。
と、その前に一旦、、、
ここでセクタ周りの用語を一度まとめておきます。
512ネイティブ、AFT、4Kネイティブって何?
ストレージには物理セクタと論理セクタがあります。
それぞれセクタの主流サイズが決まっており、
古いものは512バイトで新しいものは4096バイトです。
そしてそれぞれの組み合わせによって呼び名があります。
物理セクタ | 論理セクタ | |
---|---|---|
512ネイティブ | 512 | 512 |
AFT | 4096 | 512 |
4Kネイティブ | 4096 | 4096 |
512アライメントとか4Kアライメントとか、
人によって言い方は違ったりするようです。
またAFTはAdvanced Format Technology の略です。
512ネイティブから4Kネイティブへ
時代が完全移行するまでのつなぎ技術です。
ちなみになぜ、4096バイトのアライメントの方が良いのでしょうか?
AFTの英語wikiにその答えが載っています。
アライメントなので保存する最小単位が
512バイト単位か4Kバイト単位かの違いなのですが、
単位セクタに加えて、それに付随する情報も
セットになって格納されていきます。

出典:https://en.wikipedia.org/wiki/Advanced_Format
その追加で入る情報が512バイトごとよりも、
4Kバイトごとに格納した方が効率が良いよね、
というお話しです。
Description | 512-byte sector | 4096-byte sector |
---|---|---|
Gap, sync, address mark | 15 bytes | |
User data | 512 bytes | 4096 bytes |
Error-correcting code | 50 bytes | 100 bytes |
Total | 577 bytes | 4211 bytes |
Efficiency | 88.7% | 97.3% |
出典: https://en.wikipedia.org/wiki/Advanced_Format
4Kアライメントの方が、512アライメントと比べて、
約9%の効率性が向上します。
以下に効率的にストレージに保存できるが分かりますね。
話しが少しそれましたが、
自分が使用しているストレージの
単位セクタサイズを確認してみましょう!
セクタサイズを確認する方法
管理者権限でコマンドプロンプトを起動させます。
fsutil fsinfo ntfsinfo C: |
ドライブレターは環境に併せて
変更して下さい。

↑から分かるように
内蔵SSDは512バイトのセクタサイズでした。
単にセクタサイズと表記してあるものが、
前項の論理セクタに該当します。
なのでこの場合、内臓SSDはAFTに該当します。
次にクローン先である、
外付けしてある状態のSSDを見てみます。
fsutil fsinfo ntfsinfo E: |

セクタサイズが4096バイトでした。
この場合は、4kネイティブになります。
このように(論理)セクタサイズが
異なっているとクローンは作れないです。
EaseUSに課金すれば、
この問題をクリアしながら
クローン作成出来るようですが、
これだけのために課金はしたくないです。
ということでタイトルの記載通り、
(自力で)何とかしていきます。
セクタサイズの異なる場合のSSD換装法
まず考えるのが、
どうしたらSSDのセクタサイズを
変更できるのかということです。
物理セクタサイズは変えられないとしても、
論理セクタならソフト上の話なので、
何とかして変えられるかもしれない、
私はそう思いました。
外付けSSDをdiskpartから
cleanしてformatの際に
オプションでサイズを指定できるのでは
と安直に思ったのですがダメでした。
色々調べてみるとどうやら、
"M.2(NVMe)"は外付けしている限り、
(論理)セクタサイズは、
4kになってしまうそうです。
外付け(USB変換経由)ではなく、
内蔵のPCIeスロットで接続すれば、
セクタサイズを512バイトに出来るそうです。
既にある内蔵の256GBのSSDを一度、
違うストレージにクローンを作成して、
OSを仮置きしておきます。
そして内蔵の256GBの元SSDを
1TBのSSDに交換した後、
仮置きしていたストレージから
再度クーロンを作成します。
よってクローン作成の工程を2度行います。
今回は仮置きの場所に内蔵SATA HDDを使いました。
"SATA"であれば外付けの場合でも、
セクタサイズは512バイト(である場合が多い?)なので、
もしPC内部に仮置き場所を作れない場合は、
外付けのSATAストレージを用いることでも
成功するかと思います。
実際の様子が以下になります。

↑の画像で言うと、
まず黄色から赤(SATA HDD)にクーロンを作成して、
黄色を新しいSSDに取り換えて、
赤から新しいSSDにクーロンを作成します。
仮置きストレージから
本命SSDにクローン作成する前に、
一度仮置きストレージの画面上で、
本命SSDをフォーマットし直しておきましょう。
さて、換装が完了したので、
交換後の新しいSSDのセクタサイズを
念のために確認してみましょう。

※256GBのクローンなので、
換装後にCドライブのパーティションを
拡張した後の画像になります。
セクタサイズが512バイトで
総セクタサイズも1TBになっています。
成功です!!!やったね!
以上です。
最後まで読んでいただきありがとうございました。