Ubuntu 12.04を使用しています。古い4GB SDカードを持っていますが、新しい16GB SDカードを購入しました。古い4GB SDカードから新しい16GB SDカードにすべてをコピーしたいと思います。通常のコピーアンドペーストのトリックは何かを見落とすのではないかと恐れていたので、古い4GB SDカードを16GB SDカードに複製したいと思いました。 このリンク の指示に従って、シェルでdd
コマンドを使用しました。
これは、1つの小さな警告で機能しました。新しいSDカードは4GBになりました。 16GB SDカードのプライマリパーティションが4GBに縮小されたため、後でこれがわかりました。この問題を解決しましたが、理解できたと思います。しかし、私の質問は、16 GB SDカードのプライマリパーティションを4 GBに縮小せずに、古い4 GB SDカードを新しい16 GB SDカードに複製するにはどうすればよいですか?
Ddでパーティションのcontentsをコピーしない限り、常にプライマリプライマリパーティションをコピーしたサイズに縮小します。
Sudo dd if=/dev/sda/ of=/dev/sdb bs=4k
または、SDカードスロットが2つない場合は、一時ストレージとして画像ファイルを使用しました。このコマンドを使用して、パーティションとパーティションテーブルを新しいSDカードにコピーしました。
これを試してください(パーティションが/dev/sda1
):
Sudo dd if=/dev/sda1 of=~/sdcard.bin
Sudo dd if=~/sdcard.bin of=/dev/sda1
これにより、パーティションの内容のみがコピーされます。
新しいSDカードのパーティションのサイズを変更することもできます。これに関する情報が必要な場合は、SDカードで使用されているファイルシステムをお知らせください。
パーティションサイズを16GBに設定した場合でも、ファイルシステムメタダは4GBのパーティションを想定して作成されており、自動的に拡張されません。
それを修正する簡単な方法は、gparted
を起動し、パーティション全体を拡張してディスク全体を使用することです。これにより、パーティションとファイルシステムの両方が修正されます。
古いSDカードにパーティションテーブルがない場合は、sda
をダンプし、新しいカードに16GBのsda1
パーティションを作成し、ddを使用してそのパーティションにイメージを書き込みます。 @Earendilで説明したように、gparted
を使用したチェックが必要です。
同じことがここで起こりました。実際、私はsda1、notsda
でコマンドを使用しました。簡単な方法は、Gpartedを使用することです。
check
を選択します。私の場合はそうでした。 SDHCカードが16GBを正しく読み取るようになりました(GPartedがクローンパーティションをパーティション内の使用済みスペースとして表示する前)。あなたがそれらを習得するとき、UbuntuとこれらのUbuntuツールがどれほど強力であるか信じられないほどです。お役に立てれば。