異なるサイズ/モデルの SSD 間で Linux OS ディスクを正常にクローン (dd を使用) することは可能ですか?

異なるサイズ/モデルの SSD 間で Linux OS ディスクを正常にクローン (dd を使用) することは可能ですか?

かなり古い SSD に CentOS をインストールしています。SSD
の syslog にハードウェアの問題が示されています。

私は次の質問の答えはいいえ特にスーパーブロックとブートセクターの配置によるものですが、

異なるサイズ/モデルの SSD 間で Linux OS ディスクを正常にクローン (dd を使用) することは可能ですか?

具体的には、次のようになりますか?

$ dd if=/dev/oldSSD of=/dev/newSSD bs=64K conv=noerror,sync

答え1

それすべき新しいSSDがもっと大きくなれば、少なくとも古いSSDと同じサイズです...バイトレベルで容量を比較する必要があります。500GB「ディスクの容量は必ずしも他のディスクとまったく同じではありません」500GB「ディスク

ただし、注意すべき点は次のとおりです。

  • ソースファイルシステムをマウントしないか、少なくともすべてを読み取り専用で再マウントしてください。
  • 古い SSD の破損または読み取りエラー - ほとんどのファイルシステムでは、ファイルの内容が破損しているか正しくないかを判断できません。
  • ファイルシステムと基礎となるストレージのページ サイズまたは配置 - たとえば、古い SSD に 2 KB ページがあり、新しい SSD に 16 KB ページがある場合など。
  • クローンを作成したら、追加のスペースを使用するためにパーティションとファイルシステムのサイズを変更する必要があるでしょう。
  • 古いディスクであれば、OS も古い可能性があります... 最新バージョンを新規インストールする方がよい解決策ではないでしょうか? 後で古い SSD からデータを取り出すこともできます。
  • ディスク ID とファイルシステム ID は同一であるため、新しいデータと古いデータのアドレス指定を試行するときに問題が発生する可能性があります。たとえば、tune2fs -U randomext2/3/4 ファイルシステムを参照してください。

ソース ディスクに疑わしい場合は、 を推奨しddrescue、ログ ファイルを保存するようにしてください。

渡されるブロック サイズをdd約 4 - 8 MB に増やすと、システム コールが減り、ターゲット SSD の消去ブロック サイズが一致するため、時間が大幅に短縮されます。また、ターゲット SSD の摩耗も少なくなる可能性があります。

関連情報