Bios setup utility linux

How do I enter the BIOS/UEFI from Ubuntu?

Windows 10 has a feature to enter BIOS/UEFI directly from the OS, which is handy for machines that do not allow you to enter them during startup. I would like to install Ubuntu on an OEM device and obviously I will be using the Windows feature to do this, but I will still require BIOS access in the future. How can I access the BIOS from Ubuntu?

Related: askubuntu.com/questions/318796/… Also can we get make and model # of this machine that doesn’t allow BIOS access at boot time?

sudo systemctl reboot —firmware-setup but this is not available on all systems. I hope I understood your question right.

2 Answers 2

The BIOS/UEFI can be accessed by pressing the appropriate key at boot time. A table of BIOS/UEFI access keys for different motherboard manufacturers is in this answer.

You can also enter the BIOS/UEFI directly from Ubuntu the way you can do sometimes from Windows by running sudo systemctl reboot —firmware-setup but I strongly recommend that Ubuntu users shouldn’t use this method except for when all other methods of accessing the UEFI settings have failed. When I tried this command it reset the CMOS and all my UEFI settings got reset back to their default values including the clock. When I exited from the UEFI settings to reboot, the screen froze and I had to manually power off the computer and cold start it. Fortunately I knew my previous UEFI settings, so I could immediately restore them before exiting from the UEFI settings.

This is what man systemctl has to say about the —firmware-setup option.

--firmware-setup When used with the reboot command, indicate to the system's firmware to reboot into the firmware setup interface. Note that this functionality is not available on all systems. 

man systemctl didn’t say anything about resetting the CMOS. It only said «this functionality is not available on all systems».

Источник

Как прочитать / записать все настройки BIOS из Linux CLI?

После этого я несколько раз менял настройки BIOS (такие как виртуализация, включение / отключение IGD Turbo, изменение настроек USB и т.д.) И выгружал все содержимое следующих файлов / команд при каждой загрузке.

Читайте также:  Repair system files linux

Результат? Я сравнил результаты дампа бок о бок с Meld и woala! Ничего не изменилось! Какого черта.

Итак, вот список моих вопросов (я инженер-электронщик, поэтому вы можете узнать подробности или обратиться к техническим материалам без колебаний).

  1. В какой части материнской платы (я имею в виду чип) мы хранили все настройки BIOS (для старых версий)?
  2. Какое оборудование нам требуется, чтобы сохранить настройки и интерфейс BIOS UEFI? И как аппаратное обеспечение UEFI BIOS отличается от старых версий?
  3. Есть ли способ получить доступ к этому (или к этому) оборудованию через любые драйверы / файлы в Linux?
  4. Можно ли изменить эти конфигурации из-за ОС?

Все ответы будут высоко оценены.

4 ответа 4

Не существует общего способа, которым ОС может получить доступ к системному BIOS. Это было бы возможно только в том случае, если бы производители предоставили подробную информацию и установили стандарты того, как это должно быть сделано. Это не тот случай, и я не думаю, что это будет хорошей идеей.

Некоторые производители создали программное обеспечение для своих систем, по крайней мере, для Windows. Это программное обеспечение должно быть разработано для определенных версий BIOS.

Проблема в том, что BIOS является собственностью каждого производителя. Обычно настройки хранятся в CMOS, но для этого нет никаких требований. Производители могут хранить настройки в любом месте и по своему усмотрению. Нет документации для этих деталей.

С этим связаны последствия для безопасности. Если законное программное обеспечение может получить доступ к BIOS, ничто не помешает вредоносному программному обеспечению сделать то же самое. Это откроет целый новый мир возможностей для вредоносных программ, который создатели смогут в полной мере использовать. Конечно, гарантии могут быть разработаны, но они могут быть и будут обойдены

То, что вы называете BIOS — это (как минимум) 3 разные вещи:

  • Утилита настройки системы (часто ошибочно называемая BIOS или CMOS Setup)
  • BIOS (то есть элементарный загрузчик и стандартизированные API)
  • (U)EFI Firmware (то есть более современная версия загрузочной аппаратной абстракции)

В то время как последние два предоставляют четко определенный набор API, первый — нет. Это означает, что не существует независимого от производителя универсального способа манипулирования всеми настройками, который предоставляет утилита установки.

Читайте также:  Astra linux язык системы

Относительно того, где хранятся настройки: Большинство производителей используют статическое ОЗУ с батарейным питанием («CMOS-RAM» в древней номенклатуре), поэтому возникает проблема, если эти ячейки CR2032 на материнской плате погибают.

На серверах HPE вы можете изменить настройки с помощью утилиты conrep. Это часть RPM-инструментов hp-scripting-tools. Использование описано здесь:

h20566.www2.hpe.com/hpsc/doc/public/display?sp4ts.oid = 5249594 & docLocale = en_US & DocId = emr_na-c05182235

Это довольно просто. С параметром -s (сохранить) вы говорите это, чтобы сохранить конфигурацию, например:

И с параметром -l (load) вы говорите это для загрузки конфигурации:

Файл данных на самом деле является XML-кодом. Поэтому, если вы хотите, например, включить / отключить настройки гиперпоточности, найдите соответствующую строку и измените значение. Смотрите пример для G6 и более новых поколений:

Источник

How to read/write all BIOS settings from Linux CLI?

Asus EFI BIOS Utility - EZ Mode

I have been searching around 8 hours and I would like to clear up the points that I haven’t fully figured out yet. TL;DR version: How can I access (read and write) all BIOS settings such as enabling/disabling virtualization, enable/disable turbo frequency of GPU, set log display time etc. from the CLI? Here is the story: First, we had old BIOSes, such as this one: And now, we have a new generation of BIOSes, such as this one: We call them UEFI BIOSes, am I correct? Then I’ve read (and tested) the following articles:

  • www.pixelbeat.org/docs/bios/
  • stackoverflow.com/questions/6259124/apis-for-querying-and-setting-bios-properties (and also all links referred in responses)
  • unix.stackexchange.com/questions/126132/how-to-dump-bios-data-to-a-file
  • stackoverflow.com/questions/34537435/where-does-dmidecode-get-the-smbios-table
  • en.wikipedia.org/wiki/System_Management_BIOS
  • www.linux-mag.com/id/7768/
  • www-pc.uni-regensburg.de/hardware/techdok/bios_dmi_20.pdf (up to page 17)
  • www.geeklab.info/2010/05/backup-your-cmos-from-linux/
  • www.bioscentral.com/misc/cmosmap.htm
  • smackerelofopinion.blogspot.com.tr/2010/09/digging-into-bios-cmos-memory.html

After that, I’ve changed the BIOS settings (such as virtualization, enable/disable IGD turbo, changing USB settings etc.) several times and dumped the entire contents of following files/commands on each boot.

Results? I’ve compared the dump results side-by-side with Meld and voilà! Nothing has changed! What the heck?

Here is the list of my questions. I’m an electronics engineer so you can go into details or refer to technical readings without a hesitation.

  1. In which part of the mainboard (I mean chip) did we store all the BIOS settings (for old versions)?
  2. What kind of hardware do we require to keep the settings and interface of UEFI BIOSes? And how is the UEFI BIOS hardware different than the old versions?
  3. Is there any way to access this hardware over any kind of drivers or files in Linux?
  4. Is it possible to change those configurations from the OS?
Читайте также:  Samsung ml 2160 linux drivers

All responses will be appreciated greatly.

Источник

Настройка BIOS через ОС

Сабж. Возможно ли? Стационарный компьютер, не работают PS/2 для клавиатуры и внутренний USB-контроллер. Внешний USB-контроллер материнская не понимает (начинает работать только в ОС).
Версию и производителя BIOS скажу позжей, сейчас просто интересует, возможно ли хотя бы в теории.

Насколько помню, то нет. Часть информации можно из BIOS прочитать.

Ведь прошивка биоса из системы возможна (очень много прошивальщиков от производителей есть для оффтопиков). Те же часы записываются в CMOS. Почему нельзя настроить и остальное?

можешь скачать биос с сайта производителя
декомпилить его, внести изменения и снова скомпилить
затем прошить прямо из os
на моём hp так можно

Гигабайтовские матери так умеют. Те что с гибрид ефи, по крайней мере.

Напиши точную модель материнки и модель USB контроллера.

не работают PS/2 для клавиатуры и внутренний USB-контроллер

Возможно на материнке конденсаторы повзрывались, если не мост вообще. Пытаешься лечить следствие, странный ты.

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

Мне этот вопрос давно не дает покоя. Но нет, в общем случае нельзя

Для моей материнки (gigabyte) на диске поставлялась программа под венду, позволяющая прямо там изменять настройки BIOS. Работоспособность не проверял, т.к. венды под рукой нет, но подозреваю, что чисто технически это возможно.

m0rph ★★★★★ ( 16.06.13 11:20:27 MSK )
Последнее исправление: m0rph 16.06.13 11:20:49 MSK (всего исправлений: 1)

По идее если найти идентичную материнскую плату, сделать на ней нужные настройки BIOS, сдампить CMOS в файл, а потом записать этот дамп в CMOS на проблемной материнской плате, то должно работать.

Это для десктопа, в ноутбуках может быть все хитрее.

В зависимости от производителя могут быть готовые утилиты.

Для серверов HP — conrep (работает в Linux и Windows). Сохраняет настройки BIOS в XML-файл, который можно потом отредактировать и раскатать на несколько серверов.

Источник

Оцените статью
Adblock
detector