Как обновить BIOS
Как обновить 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.EXE2 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 на вашем компе.
Дисклеймер: Из того, что автор блога, описывая свои шаги, добился результата, совсем не следует, что он будет отвечать за ваши действия, даже если вы повторите их шаг в шаг. Используйте данную инструкцию на свой страх и риск.