Запишіть завантажувальне оновлення BIOS .ISO на USB-накопичувач


14

Lenovo поширює оновлення BIOS у вигляді .iso файлів ( приклад ), які повинні бути записані на компакт-диску та завантажені. Записування його на компакт-диск працювало та завантажувалось коректно, але тепер я хочу використовувати USB-накопичувач (тому що я не вірю своєму CD-диску), як створити цю USB-накопичувач за допомогою Ubuntu?

Існує багато навчальних посібників, які пояснюють, як створити завантажувальні USB-накопичувачі з ОС на базі Linux (за допомогою UNetbootin та подібних, вони створюють файли, пов’язані з Linux, у корені USB-накопичувача) та з утиліти на базі Windows (з FreeDOS та подібними). Я вважаю, що тут немає рішень, оскільки ISO-файл оновлення BIOS не базується на Linux чи DOS (при встановленні ISO не відображається жодна відома файлова система)


1
Ви намагалися скинути вміст ISO на USB? Для цього виконайте наступну команду: # dd if=/path/to/iso of=/dev/yourusb bs=4M. ПОПЕРЕДЖЕННЯ : Ваш USB буде СПІЛЬНО . Також перевірте шлях до вашого блокового накопичувача USB
користувач Arch

@Archuser: Це працює лише в тому випадку, якщо образи ISO були зроблені для завантаження в цій конкретній конфігурації. Регулярні завантажувальні ISO-зображення не можуть бути завантажені таким чином.
Девід Фоерстер

Переконайтеся, що ви викликаєте "sudo sync" двічі після команди dd. в іншому випадку ядро ​​може не синхронізувати записані дані з кешу ядра на накопичувач.
Маттіас

Відповіді:


16

Я дізнався, що може бути вирішенням проблеми на http://positon.org/lenovo-thinkpad-bios-update-with-linux-and-usb .

Спочатку перетворіть isoзображення у imgфайл:

sudo apt-get install genisoimage
geteltorito -o bios.img gruj09us.iso

Потім скопіюйте на USB-ключ:

sudo fdisk -l /dev/sdb  # double check that the device is right
sudo dd if=bios.img of=/dev/sdb #Will Erase the drive!! 

Це сказав, що я думаю, ви повинні спробувати спершу, чи добре це завантажується, якщо ви просто пишете .iso загальним інструментом, як зазвичай. (За умови, що він потребує певного введення даних і не починає автоматично вимикатись у вашій BIOS під час завантаження.) Останні два рази я встановив Linux, я не користувався рекомендованим інструментом. (Я зробив завантажувальний USB на 15.04 разом із програмою SUSE Studio Image Writer, оскільки Unetbootin перемістив його прямо вгору кілька разів. Він працював нормально.)


1
Після оновлення BIOS відновіть USB на повну потужність за допомогою: # dd count=1 bs=512 if=/dev/zero of=/dev/sdbта відформатуйте USB після цього
користувач Arch

Це спрацювало! Не впевнений, що таке eltorito, але це вирішило проблему.
Nicolas Raoul

2
Для записів: ISO складається з порожнього кореневого каталогу та прихованого завантажувального образу BIOS, який є емульованим жорстким диском. geteltorito знаходить зображення диска, читаючи каталог завантаження El Torito. Потім він дізнається розмір зображення з таблиці розділів MBR на зображенні. Нарешті він витягує зображення до цільового файлу. Це черевики з USB-накопичувача лише тому, що все необхідне програмне забезпечення знаходиться на емульованому жорсткому диску. Дуже своєрідна ситуація.
Томас Шмітт

Я спробував це, але не зміг змусити його завантажитися для Lenovo T510. Я, безумовно, захистив завантажувальний BIOS, але коли він випалив на USB, там нічого не було (це нормально?). Коли я намагався завантажувати повідомлення про помилку, було те, що ОС не було? Будь-які ідеї ??
shaneonabike

перевірте також це посилання: ubuntuforums.org/showthread.php?t=1852425 та thinkwiki.org/wiki/…
TiloBunt

2

Як зазначив користувач Arch у коментарях, найпростіший спосіб записати завантажувальний ISO на USB-накопичувач - ddце зображення на накопичувач.

Перша потрійна галочка, на який блоковий пристрій ваш USB-накопичувач зараз відображена:

lsblk

Чим ddзображення на USB-накопичувачі. Наприклад, якщо ваш USB-накопичувач відображений на /dev/sdb:

sudo dd if=/path/to/image of=/dev/sdb bs=8M && sync

Різні розміри блоків зазвичай різняться, однак зазвичай більший розмір блоку працює краще, ніж менший розмір блоку; розмір блоку 8М повинен бути достатнім, щоб процес запускався на повній швидкості.

Якщо ви хочете стежити за ходом процесу, встановіть pv:

sudo apt-get update && sudo apt-get install pv

І замість цього запустіть цю команду:

pv /path/to/image | sudo dd of=/dev/sdb bs=8M && sync

2
Ви повинні додати && синхронізацію до dd
ps95

@ prakharsingh95 Тонке зауваження. Дякую
kos

2
Повністю скопійований ISO на USB завантажується лише через BIOS, якщо ISO починається з MBR. Це додаткова особливість, яку зазвичай називають "ізогібридом". Усі основні дистрибутиви Linux мають таким чином встановлені ISO-установки. Але ISO Lenovo не має MBR, лише завантажувальний каталог El Torito для завантаження через BIOS з CD / DVD / BD. Тим не менш, у ньому є всі необхідні речі у прихованому завантажувальному зображенні, починаючи з блоку ISO 27, який емулює жорсткий диск.
Томас Шмітт

0

Про всяк випадок, коли хтось ще шукає відповідь.

Описаного вище рішення було недостатньо для мого Lenovo E470, здатного на UEFI. Утиліта оновлення BIOS просто не запускається з USB-накопичувача.

Треба прочитати файл README, відповідний файлу оновлення BIOS.

Після перезавантаження натисніть клавішу Enter, щоб перервати нормальний запуск і після введення в BIOS Setup:

...
-> 7. У "UEFI / Legacy Boot" переконайтесь, що вибрано "Тільки UEFI".
   8. Виберіть у меню "Boot". Зверніть увагу на поточний порядок пріоритетності завантаження для
      відновлення пізніше, якщо вам потрібно змінити список завантаження.
   9. У «Порядку пріоритетності завантаження» переконайтесь, що вказаний нижче пристрій знаходиться поверх
      "ATA HDD0".
      - "ATAPI CD0" (при використанні внутрішнього оптичного приводу ThinkPad)
      - "USB CD" (при використанні оптичного накопичувача USB)
-> - "USB HDD" (для мого USB-накопичувача)

Після перезапуску ви можете мати можливість завантажувати з вас "USB HDD".


Про це Lenovo згадує у своїй README на сторінці завантаження BIOS, але добре нагадати людям.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.