MS Windows (またはフロッピードライブ) なしで BIOS を更新する

MS Windows (またはフロッピードライブ) なしで BIOS を更新する

Kubuntu 12.04を使用しています。マザーボードのBIOSを更新する必要があります。Arch Linux ウィキ「起動可能な FreeDOS USB スティックを作成する最も簡単な方法は、unetbootin を使用することです。」と書いてあるので、それを実行しました。

UNetbootin を使用して、USB スティックに FreeDOS 1.0 (fdboot.img) をインストールすることに成功しました。

しかし、現在、FreeDos からアクセスできるようにファイルを追加する方法がわからず困っています。

Arch Linux wiki には、「最後に、フラッシュしたいもの (BIOS、ファームウェアなど) をすべてコピーします」と書かれています。私はそのようにしてから、FreeDos を再起動しました。ファイルはどこにも見つかりませんでした。FreeDos システム ファイルのみの「A:>」プロンプトが表示されました。他のドライブは利用できず、USB スティックのルートにコピーしたファイルは見つかりませんでした。

ちなみに、私の BIOS イメージのサイズは 4.0 MB です。

答え1

画像がフロッピーディスクに収まらない場合は、同じArch Linux wiki指示があります。

フラッシュイメージがフロッピーに収まらない場合は、FreeDos ブートディスクのウェブサイト、10MB のハードディスク イメージをダウンロードします。このイメージはパーティションを含む完全なディスク イメージなので、フラッシュ ユーティリティを追加するのは少し複雑になります。

# modprobe loop
# losetup /dev/loop0 <image-file>
# fdisk -lu /dev/loop0

ここで簡単な計算ができます。ブロック サイズ (通常は 512) に最初のパーティションの開始を掛けます。執筆時点では、最初のパーティションはブロック 63 から始まります。つまり、パーティションはオフセット 512 * 63 = 32256 から始まることになります。

# mount -o offset=32256 /dev/loop0 /mnt

これで、フラッシュ ユーティリティを通常どおりファイルシステムにコピーできます。

完了したら:

# umount /mnt
# losetup -d /dev/loop0

これで、イメージをブート用に USB スティックにコピーしたり、通常の手順に従って memdisk としてブートしたりできるようになりました。

デバイスがマウントされていないことを確認します。

lsblk

画像をコピーします:

sudo dd if=/location/of/the/img/file.img of=/dev/sdx

注記:

  • まずデバイスをアンマウントしたことを確認してください。
  • 「sdx」の「x」は、接続されたデバイスごとに異なります。デバイス ファイルをフラッシュ ドライブのファイルと混在させると、ハード ディスクが上書きされる可能性があります。
  • 「sdxn」ではなく「sdx」であることを確認してください。「n」は「1」や「2」などの数字です。

関連情報