web-dev-qa-db-ja.com

ddを使用して起動可能なISOイメージをUSBスティックに書き込む:起動しない(起動シーケンスの最初のUSBにもかかわらず)

Lenovo Thinkpad R500 2732にUbuntuをインストールしましたが、BIOSを更新する必要があります。

LenovoのWebサイトで、次のように提供されています。

Windows 7(32ビット、64ビット)、Vista(32ビット、64ビット)用のBIOSアップデートブータブルCD、XP --ThinkPad R500

BIOSアップデートを実行する起動可能なCDが本当に必要なものだと思います。 (それでもなぜ「Windows」と表示されるのか疑問に思っています...起動可能であれば、OSに依存しないのではないでしょうか?)

CDを無駄にしたくないので、画像をUSBスティックにコピーしました。

Sudo dd if=/home/nico/7yuj40uc.iso of=/dev/sdb1 bs=1M

USBが起動シーケンスの最初であることを確認した後、再起動しました。

問題: 起動しません。一歩忘れましたか?

isoイメージreadme )に関する詳細:

ls -lh 7yuj40uc.iso
25M
file 7yuj40uc.iso
/home/nico/7yuj40uc.iso: # ISO 9660 CD-ROM filesystem data '7YUJ40US                       ' (bootable)

(右にスクロール:「起動可能」と表示されます)

  • UNetbootinはLinuxイメージではないため、機能しません。
  • インターネット上の一部の人々は、ISOのコンテンツをコピーして他の手順を実行することを勧めています。このISOのISOコンテンツはゼロであるため、機能しません。 ISOをマウントすると、ファイルがゼロであることがわかります。
1
Nicolas Raoul

https://wiki.archlinux.org/index.php/ThinkPad_Edge プロセスは次のとおりです。

  1. つかんで開梱 https://gna.org/projects/grub4dos/ (wikiには古いリンクがあります)
  2. Grub4dosディレクトリで、Sudo ./bootlace.com /dev/sdb
  3. cp grldr /media/USBSTICK
  4. cp menu.lst /media/USBSTICK
  5. cp /path/to/7yuj40uc.iso /media/USBSTICK

最後に、次のコードをペンドライブのmenu.lstに追加して、USBスティックでlenovo製のPCDOSプログラムを起動する必要があります。

title Thinkpad-BIOS-UPDATE
find --set-root /7yuj40uc.iso
map /7yuj40uc.iso (0xff) || map --mem /7yuj40uc.iso (0xff)
map --hook
chainloader (0xff)
boot

そしてそれはそれについてです。

3
chx

Thinkpad X1 CarbonのBIOSをフラッシュするために、Lenovoの起動可能なCDのisoから起動可能なUSBスティックを作成しようとしたときに、chxのアンサーが機能しませんでした。質問で述べたように、Unetbootin、multiusbなども機能しませんでした。うまくいったのは、スクリプトを取得することでした geteltorito.pl 、いわゆるブート可能イメージを抽出し、そのイメージをUSBフラッシュスティックに追加します。 CDからbootabeイメージを抽出するためのツールは他にもたくさんあるかもしれません。たとえば、ubuntuのgenisoimageにはバイナリのgeteltoritoが含まれています。

./geteltorito.pl -o g.img gruj08us.iso
dd if=g.img of=/dev/sdX bs=1M
# use lsblk to get the device, e.g., sdb; Not the partition, e.g., sdb1
# bs=1M is not necessary, just for speed

イメージを調べるには、たとえばfdiskを使用して、イメージに含まれているファイルシステムのオフセットを取得し、そのオフセットを使用してイメージをマウントします。

fdisk g.img
> p
# if the sector size is 512, the start of the filesystem at sector 32,
# 32 x 512 = 16384
mount -o loop,offset=16384 g.img /mount/point/
1
tkl