由於最近本子老出問題,BIOS版本是1.18, 太老了,想更新一下thinkpadt510 BIOS,但因爲聯想網站上給的只有WINDOWS版和CD版的固件,本身的U盤和光盤都沒有,只能硬盤下經過GRUB引導 CD版固件升級了。linux
UBUNTU的GRUB試了好多辦法,都沒有引導成功ISO,網上找資料,說能夠經過GRUB4DOS引導。
ios
解決思路有了:GRUB2加入引導GRUB4DOS的選項,再經過GRUB4DOS引導ISO文件。ubuntu
grub4dos目錄放入LINUX的一個分區內,我本機分區/dev/sda9掛載在/bak目錄上,oop
grub4dos目錄放入/bak/iso/目錄下,並把下載的bios ISO文件放入到 /bak/iso/目錄下,更名爲 tp-bioscd.iso網站
修改/etc/grub.d/40_custom,加入以下代碼spa
menuentry "GRUB4DOS" {命令行
insmod fat it
set root=(hd0,9)io
linux /iso/grub4dos/grub.execlass
}
2. >sudo update-grub
3. >sudo reboot
4.開機GRUB裏多了一行 GRUB4DOS,選中後進入grub4dos界面,選擇第2項進入grub4dos命令行模式,輸入下面幾行
5.grub>map (hd0,8)/iso/tp-bioscd.iso (hd32)
6.grub>map --hook
7.grub>chainloader (hd32)
8.grub>boot
成功啓動ISO文件!按提示選擇就OK,升級過程會比較慢,不要斷電!
注意:在進入到grub4dos後,以前的hd0,9找不到分區,後來我改爲了hd0,8成功,不知爲何!
重要提示:升級BIOS自己就有很大風險,儘可能不要在不清楚風險的狀況下升級!
若有人有辦法在GRUB2下直接引導BIOS ISO文件的話,歡迎留言!
=========================================
GRUB2下引導UBUNTU ISO辦法,無需提取ISO裏的文件
menuentry "ubuntu iso install" --class os {
insmod fat
loopback loop (hd0,9)/iso/ubuntu-14.04.1-desktop-amd64.iso
set root=(loop)
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=/iso/ubuntu-14.04.1-desktop-amd64.iso locale=zh_CN.UTF-8 noprompt noeject splash
initrd (loop)/casper/initrd.lz
}