3

Есть ли способ угадать из работающей системы, если у вас есть BIOS или UEFI? Если так, то как? Я использую Debian в качестве основной ОС.

Если нет, если я захожу в меню BIOS или UEFI, есть ли способ проверить, какой способ работает? Это на ноутбуке Lenovo T-Series T-440.

2 ответа2

3

В большинстве дистрибутивов Linux самый простой способ сделать это - проверить наличие каталога под названием /sys/firmware/efi:

$ ls -F /sys/firmware
acpi/  efi/  memmap/

Если он присутствует, как в этом примере, то вы загружаетесь в режиме EFI. Если он отсутствует, то вы, вероятно, загрузились в режиме BIOS; Тем не менее, существуют способы загрузки в режиме EFI и отсутствия этого каталога. Эти методы обычно включают в себя редкие конфигурации или передачу в ядро параметров загрузки, которые отключают поддержку EFI.

Если вы считаете, что может возникнуть одна из этих проблем, вы можете проверить кольцевой буфер ядра с помощью dmesg и найти строки, содержащие строку EFI (или efi , для некоторых строк):

$ dmesg | grep -i efi
[    0.000000] Command line: \vmlinuz-3.13.0-65-generic.efi.signed ro root=/dev/mapper/louiswu-trusty_crypt  quiet splash  initrd=\initrd.img-3.13.0-65-generic
[    0.000000] efi: EFI v2.31 by INSYDE Corp.
[    0.000000] efi:  ACPI=0x9cffe000  ACPI 2.0=0x9cffe014  SMBIOS=0x9cebef98 
[    0.000000] efi: mem00: type=3, attr=0xf, range=[0x0000000000000000-0x0000000000001000) (0MB)
[    0.000000] efi: mem01: type=2, attr=0xf, range=[0x0000000000001000-0x0000000000007000) (0MB)
...
[    0.950130] efifb: probing for efifb
[    0.951549] efifb: framebuffer at 0xa0000000, mapped to 0xffffc90010f00000, using 8100k, total 8100k
[    0.951551] efifb: mode is 1920x1080x32, linelength=7680, pages=1
[    0.951552] efifb: scrolling: redraw
[    0.951554] efifb: Truecolor: size=8:8:8:8, shift=24:16:8:0
[    0.963414] fb0: EFI VGA frame buffer device
[    1.033729] EFI Variables Facility v0.08 2004-May-17
[    1.145930] fb: conflicting fb hw usage inteldrmfb vs EFI VGA - removing generic driver
[    1.911331] tsc: Refined TSC clocksource calibration: 2394.456 MHz

Это может быть немного сложнее для анализа, потому что вы можете найти несколько строк "EFI" даже на компьютере с BIOS, особенно если встроенное ПО на самом деле EFI, но использует поддержку CSM/legacy для загрузки в режиме BIOS. Однако загрузка в режиме EFI будет иметь много строк, похожих на показанные выше, и, в частности, длинный ряд efi: mem## . (Я сократил это до двух таких строк в этом примере для краткости.)

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

Еще один момент: ваш вопрос немного двусмысленный - не совсем ясно, хотите ли вы узнать, в каком режиме вы работаете в данный момент или на что способны ваши аппаратные средства . Я предполагал первый вопрос в этом ответе до сих пор. Если вы хотите изучить возможности вашего оборудования, то могут помочь предыдущие тесты; если вы загрузились в режиме EFI, то у вас почти наверняка есть прошивка EFI. (Можно использовать DUET или Clover для запуска EFI поверх старого стиля BIOS, но это довольно редкие конфигурации, которые требуют значительных усилий для настройки, так что вы, вероятно, знаете, если бы вы сделали это, по крайней мере, на компьютер, которым вы управляете.) Если вы обнаружите, что загрузились в режиме BIOS, у вас все равно может быть EFI. Если вы считаете, что это так, то вам просто нужно покопаться в опциях вашей утилиты установки прошивки. В частности, ищите что-нибудь с терминами "EFI", "UEFI", "CSM" или "устаревшая загрузка"; все эти термины обычно являются индикаторами того, что прошивка является EFI. Последние два указывают, что он предоставляет CSM для поддержки загрузки в режиме BIOS. Большинство EFI предоставляют CSM, но некоторые (особенно маломощные машины, такие как планшеты) этого не делают. Возраст вашего компьютера также может быть важным. Большинство компьютеров, представленных в середине 2011 года и позже, предоставляют EFI, также как и несколько проданных ранее. Все Mac на базе Intel также используют EFI. Тем не менее, проверка даты не идеальна; Я купил компьютер на базе EFI в 2007 году или около того, а компьютер на базе BIOS совсем недавно, в 2014 году, просто в качестве примера.

0

Что ж, я не знаком с ОС на базе Linux, но вы всегда можете перейти в BIOS, и на вкладке «Дополнительно» (если есть) или «Безопасность» вы можете проверить эту информацию: обычно это параметр, для которого вы можете установить значение UEFI. поддержка загрузки или Legacy.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .