0

CF(コンパクトフラッシュ)カードを備えた組み込み開発ボックスがあり、Linux fedora 11 OSとそれに続く完全な開発コード、スクリプトなどが含まれています。

目的:開発ボックスにある CF からイメージを取得し、このイメージを新しい CF カードにアップロードして、新しい開発マシンに接続したときに、OS や開発スクリプトなどをロードする必要なく使用できるようにする必要があります。

私がこれまでに行ったこと:

  1. カードリーダーを Ubuntu マシンに接続し、古い CF カードからイメージを取得して、将来の使用のために保存しました。

    例: sudo dd if=/dev/sdg1 of=./backup_image.img bs=4096 , conv=sync, noerror
    イメージは backup_image.img という名前で保存されます。

  2. 新しい CF カードをリーダーに取り付けてからumount

    sudo umount /dev/sdg1

  3. 新しい CF にすべてのブロックにゼロを書き込む

    例: sudo dd if=/dev/zero of=/dev/sdg1

  4. ステップ 3 が完了したら、保存したイメージを新しい CF カードにコピーしました。

    例: sudo dd if=backup_image.img of=/dev/sdg1

結果:成功。

しかし、実際に新しいCFカードを開発機に接続したところ、起動に失敗しました。

lode CF と新しい CF を比較しましたが、どちらも同じファイルシステム、つまり ext3 を持ち、まったく同じバイトを使用しています。

ここで欠けているもののように、私は完全に無知です。

4

1 に答える 1

0

パーティション (/boot/grub) に grub がインストールされている場合は、ブート フラグを設定してみてください。そのためにGpartedを使用できます。

それ以外の場合は、(最初のパーティションが開始する前に) CF の最初のバイトに Grub を再インストールする必要があります。グラブ

于 2012-11-28T14:11:35.173 に答える