如何在Linux下说出哪个磁盘将通过BIOS来启动?(How to tell under Linux

2019-10-21 04:55发布

如何从这些设备将在重启后作为启动设备CMOS打印?

计算机有多个SATA磁盘驱动器和连接数可启动USB的设备。

CMOS存储器的布局是由所使用的BIOS版本中定义。 我知道有几个不同的版本和BIOS的厂商。 我认为这是可能的,以确定哪一个是用来通过检查BIOS内存。 -在这个问题上不知怎么想如何通过在命令提示符下,检查Linux中的BIOS版本或名称?

我的电脑给

$ sudo dmidecode -t bios -q
BIOS Information
    Vendor: Award Software International, Inc.
    Version: F4
    ...
Characteristics:
    Boot from CD is supported
    Selectable boot is supported
    USB legacy is supported
    BIOS boot specification is supported
    ...

我没有重新启动大型机和只看BIOS设置的可能性。 这就是为什么我需要知道他们无需重新启动。

# dmidecode --type 32 --dump

Handle 0x0025, DMI type 32, 11 bytes
System Boot Information
Status: No errors detected
Header and Data:
    20 0B 25 00 00 00 00 00 00 00 00
Strings:
    20 00
    " "

发现了一些文件,
http://www.scs.stanford.edu/05au-cs240c/lab/specsbbs101.pdf
http://www.dmtf.org/standards/smbios
http://www.dmtf.org/sites/default/files/standards/documents/DSP0134_2.8.0.pdf
但他们还嫌我。

理想情况下,我需要一些命令行工具(或信息上怎么写呢),这会帮助我了解哪些设备(的/ dev / SD?)将被启动。

有关于Windows类似的问题,但还没有明确的答案- 如何判断哪个磁盘Windows中被用来引导

Answer 1:

如果这真的是一个基于BIOS的系统,而不是UEFI,再有就是确定哪些磁盘将被启动没有普遍适用和可靠的方式。 对于许多BIOS版本,默认引导的磁盘甚至可能看似随机从一个启动的设备在不同的顺序列举更改为下一个。

如果你想基于BIOS的机器上启动可靠的GNU / Linux的,标准的解决方案是确保GRUB的启动扇区被安装到BIOS中可能决定从启动任何驱动器的MBR。 如果您的发行自动重新安装时grub的包得到更新,蛴螬(这应该和大多数人),那么你应该确保你的发行版配置为GRUB的启动扇区重新安装所有的驱动器为好。



Answer 2:

如果是UEFI有抱着启动顺序和工具“efibootmgr”,可以帮助你访问这些定义的变量: http://linux.dell.com/files/efibootmgr/efibootmgr-0.5.4/efibootmgr.txt



文章来源: How to tell under Linux which disk will be used by BIOS to boot?