Как обновить BIOS на компьютере с ОС Linux, где нет не только Floppy, но и оптического привода? А конкретнее - как обновить BIOS на нетбуке? Хотя все написанное дальше можно применить и на обычном компьютере, так как описанный путь позволяет обойтись без записи Floppy или CD диска.

Возьмем, для примера, нетбук Acer Aspire one 532h. Я зашел на сайт производителя и обнаружил, что есть обновления для BIOS, исправляющие какие-то ошибки. Кстати, вот первое правило - если все работает, то лучше это не трогать! А второе правило, справедливое для тех системных администраторов, чьи сервера смотрят в интернет или доступны из сети, то есть, потенциально, могут быть взломаны - устанавливайте обновления безопасности! Мой нетбук взломать через BIOS трудно, потому что нетбук все время лежит дома, и к сети не подключен. Но перейдем же от слов к делу.

Производители обычно выпускают обновления BIOS в виде файла обновления и программы прошивки, работающей в одной из двух операционок - Windows и DOS. В Windows-е достаточно запустить исполняемый файл, и BIOS будет обновлен. А вариант с DOS-ом интереснее. Так как установленного DOS на компьютерах не найти, его можно запустить с Floppy или же с CD диска. Ни того, ни другого на нетбуках нет. Поэтому, будем действовать так - запишем файл обновления BIOS и программу прошивки в образ Floppy диска с установленным FreeDOS, а затем запустим этот образ на нетбуке с помощью Grub2 и memdisk (из проекта syslinux).

1) Находим сайт производителя нетбука (мат. платы), в нашем случае это http://support.acer.com/us/en/ затем выбираем свою модель нетбука и скачиваем архивчик с обновлением BIOS-а. Это файл BIOS_Acer_1.25_A_A.zip. Распаковываем его и наблюдаем структуру

$ tree BIOS_Acer_1.25_Windows
BIOS_Acer_1.25_Windows
├── DOS
│   ├── FLASH.BAT
│   ├── FLASHIT.EXE
│   └── NAV50.fd
├── readme.txt
└── Windows
  └── NAV50125.EXE

2 directories, 5 files

Как и было сказано выше, есть внутренние папки с файлами для DOS и для Windows. Нас интересует папка BIOS_Acer_1.25_Windows/DOS и файлы внутри нее FLASH.BAT  FLASHIT.EXE  NAV50.fd.

2) Приготовим образ Floppy. Для этого находим и скачиваем готовый образ Floppy дискеты на 1.72 Мб. Почему не обычный образ на 1,44 Мб? Да потому что иначе не влезет, файл обновления слишком большой! Я брал этот образ на сайте http://bootcd.narod.ru, вот ссылочка на страницу с образами http://bootcd.narod.ru/images.htm. Имя файла fd001720.zip. Распаковываем его

unzip fd001720.zip

и получаем файл fd001720.ima.

Монтируем этот файл в систему

sudo mount -o loop fd001720.ima /mnt

и закидываем файлы из папки DOS в образ

sudo cp BIOS_Acer_1.25_Windows/DOS/* /mnt

отмонтируем образ и скопируем его на флешку

3) Устанавливаем загрузчик Grub2 на USB флешку. Понятно, что если у вас на компьютере уже установлен Linux с загрузчиком Grub2, то флешка не нужна, просто закидывайте файлы себе в директорию /boot, или прописывайте полный путь до файлов, что более сложнее. Затем ставим на компьютер syslinux, чтобы из него взять файл memdisk (пример для Ubuntu/Debian):

sudo apt-get install syslinux

Предположим, что ваша флешка примонтирована на /media/disk. Скопируйте файл memdisk на флешку, желательно в корень:

cp /usr/lib/syslinux/memdisk /media/disk

4) Правим файл загрузчика grub.cfg, расположенный на вашей флешке в директории boot/grub. Вы же установили Grub2 на флешку, да?

Вот кусок необходимый для загрузки memdisk.

menuentry "FreeDOS with update for BIOS" {

linux16 /memdisk raw

initrd16 /fd001720.ima

}

5) Перезагружаемся, втыкаем питание от сети (иначе программа прошивки не запустится), выбираем загрузку с USB Flash, выбираем в меню Grub2 пункт  FreeDOS with update for BIOS, и вуаля - FreeDOS запущен! Запускаем программу прошивки, вводя команду

flash

Пару минут - и BIOS обновлен. Во время обновления не вздумайте вырубить компьютер! Ждите до конца процесса!

Примечание: Возня с флешкой нужна только если у вас на компьютере нет загрузчика Grub2. Или если вы готовите флешку не на том компе, что будете прошивать (как я). В любом случае, полезно иметь флешку с установленным Grub2, как минимум, чтобы суметь запустить Kazsid на вашем компе.

Дисклеймер: Из того, что автор блога, описывая свои шаги, добился результата, совсем не следует, что он будет отвечать за ваши действия, даже если вы повторите их шаг в шаг. Используйте данную инструкцию на свой страх и риск.


Опубликовано

01 March 2011

Метки


blog comments powered by Disqus