Прошиваємо bios з Лінукса

зіткнувся з такою проблемою.
шеф дав ноут, який приніс з СЕРВІСКОМ.
грит, постав вийми.
ставлю вийми - не хоче бо установник не знаходить хард, який є sata.
в СЕРВІСКОМ биос поставили старий, без підтримки usb що сильно зарудняет роботу і можливості визначення в ручну типу з'єднання хард-року.
через диск биос не оновиться бо в Досі він не бачить привід чомусь.
але ось лин поставився на ура і все побачив (хоча usb все таки проігнорував)
ноут Acer Aspire 5110
прийшла мислячи поставити лин і через нього прошити bios.
порився в і-неті і наткнувся на статтю.
думаю стати в нагоді.

# Apt-get install flashrom

Перед записом нової прошивки в БІОС, бажано зберегти стару версію, тобто скопіювати прошивку, яка вже прошита в Біосе, щоб потім можна було легко відновити все назад:

#flashrom -r MyBIOS.bin

Де MyBIOS.bin - це ім'я файлу, в який збережеться стара версія прошивки. Після збереження, можна вже на свій страх і ризик записувати завантажену прошивку в БІОС:

#sudo flashrom -w NewBIOS.bin

Де NewBIOS.bin - це ім'я завантаженої прошивки. Також, можна додати ключ -v щоб програма перевірила записану прошивку і ще можна додати ключ -V щоб висновок роботи був більш інформативним:

#sudo flashrom -Vvw NewBIOS.bin

З іншими ж ключами можна ознайомитися за допомогою --help

$ Flashrom --help

На прикладі була випробувана материнська плата GIGABYTE GA-965P-DQ6 rev2.0 з Ubuntu 8.04 GNU / Linux на борту
FlashRom при першому запуску без ключів показав ось таку інформацію:

krik @ krik-desktop:

/ Temp $ sudo flashrom
[Sudo] password for krik:
Calibrating delay loop. OK.
No coreboot table found.
Found chipset "Intel ICH8 / ICH8R", enabling flash write. OK.
Found chip "Macronix MX25L8005" (1024 KB) at physical address 0xfff00000.
Found chip "Macronix unknown Macronix SPI chip" (0 KB) at physical address 0x0.
Multiple flash chips were detected: MX25L8005 unknown Macronix SPI chip
Please specify which chip to use with the -c option.

На материнській платі встановлено два чіпа BIOS. Один головний, другий - запасний (в разі пошкодження першого, прошивка відновлюється з другого). Флешер знайшов обидва цих чіпа і запропонував вибрати, який використовувати. Щоб вибрати чіпсет - треба використовувати ключ -c. Для цієї материнської плати, щоб прочитати вже стоящею прошивку БІОСа в файл, довелося запустити її з такими параметрами:

/ Temp $ sudo flashrom -r MyBIOS.bin -c MX25L8005

/ Temp $ sudo flashrom -Vvw -c MX25L8005 965PDQ6.12K

Де файл 965PDQ6.12K - і є сама прошивка з офіційного сайту (на сайті розташовані exe-файли, але це всього-лише SFX-RAR архів з самої прошивкою і програмою-флешерів для Досана). Тепер можна перезавантажитися з новим биосом.
Налаштування NVRAM (CMOS)

В Лінуксі не тільки можна прошивати БІОС, а й також зберігати або записувати його поточні настройки, причому штатними засобами. Потрібно всього-лише довантажити модуль nvram і зчитати інформацію з пристрою / dev / nvram:

#modprobe nvram
#sudo dd if = / dev / nvram of = my_bios_cfg.bin

Де my_bios_cfg.bin - це двійковий файл, куди збережуться поточні настройки біоса. Записати настройки назад можна тим-же шляхом, тільки помінявши if на of і of на if:

#sudo dd of = / dev / nvram if = my_bios_cfg.bin

Підключення сканера Epson Perfection 1270 Установка дров NVIDIA вручну і покроково.

Народ, робіть спочатку перевірку sudo flashrom -v MyLuckyStarBIOS.bin а то, схоже, я вже другу стару плату запаривает :)
This flash part has status UNTESTED for operations: WRITE
Please email a report to [email protected] if any of the above operations
work correctly for you with this flash part. Please include the flashrom
output with the additional -V option for all operations you tested (-V, -rV,
-wV, -EV), and mention which mainboard you tested. Thanks for your help!