AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 735664
Accepted
Héctor
Héctor
Asked: 2023-02-16 11:36:23 +0800 CST2023-02-16 11:36:23 +0800 CST 2023-02-16 11:36:23 +0800 CST

如何知道计算机是通过 SSH 使用 GRUB 还是 systemd-boot?(我有 /boot/grub 和 /boot/efi/EFI/systemd 文件夹)

  • 772

在无法访问物理显示器的情况下,我如何知道我的计算机是由 grub 还是 systemd-boot 引导的?

正如我在标题上所写的那样,我同时拥有/boot/grub/和/boot/efi/EFI/systemd/文件夹。

另一方面dd if=/dev/sda bs=512 count=1 2>/dev/null | strings返回以下内容:

ZRr=
`|f
\|f1
GRUB
Geom
Hard Disk
Read
 Error

但另一方面cat /boot/efi/EFI/BOOT/BOOTX64.EFI | strings |grep systemd返回#### LoaderInfo: systemd-boot 247.3-7+deb11u1 ####

Sooo...这是怎么回事?是使用grub还是systemd-boot的电脑?

编辑:efibootmgr -v输出:

BootCurrent: 0004
Timeout: 1 seconds
BootOrder: 0004,0002,0005,0006,0007,0008,0000,0003,0001
Boot0000* Windows Boot Manager  VenHw(99e275e7-75a0-4b37-a2e6-c5385e6c00cb)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}...a...............
Boot0001* Linux Boot Manager    VenHw(99e275e7-75a0-4b37-a2e6-c5385e6c00cb)
Boot0002* Linux Boot Manager    HD(2,GPT,1eded8dc-d1ab-4723-b499-b718400c1898,0x800,0x100000)/File(\EFI\SYSTEMD\SYSTEMD-BOOTX64.EFI)
Boot0003* Linux Boot Manager    VenHw(99e275e7-75a0-4b37-a2e6-c5385e6c00cb)
Boot0004* Linux Boot Manager    HD(2,GPT,ed10b328-3615-45c0-bf5b-b117031e4c22,0x800,0x100000)/File(\EFI\SYSTEMD\SYSTEMD-BOOTX64.EFI)
Boot0005* UEFI OS    HD(2,GPT,26b839e2-9a19-4e21-ad28-dbd1c15d598d,0x800,0x100000)/File(\EFI\BOOT\BOOTX64.EFI)..BO
Boot0006* Hard Drive BBS(HD,,0x0)..GO..NO........o.S.a.m.s.u.n.g. .S.S.D. .8.7.0. .Q.V.O. .1.T.B...................A..........................>..Gd-.;.A..MQ..L.5.S.R.R.F.N.R.0.3.B.0.5.8.4. .Y. . . . .......BO..NO........o.S.T.1.2.0.0.0.N.M.0.0.1.G.-.2.M.V.1.0.3...................A..........................>..Gd-.;.A..MQ..L. . . . . . . . . . . . .T.Z.0.N.9.0.G.2.......BO..NO........o.S.T.1.2.0.0.0.N.M.0.0.1.G.-.2.M.V.1.0.3...................A..........................>..Gd-.;.A..MQ..L. . . . . . . . . . . . .T.Z.0.N.2.1.T.1.......BO..NO........o.S.T.1.2.0.0.0.N.M.0.0.1.G.-.2.M.V.1.0.3...................A..........................>..Gd-.;.A..MQ..L. . . . . . . . . . . . .T.Z.0.N.8.0.J.C.......BO..NO........o.S.a.m.s.u.n.g. .S.S.D. .8.7.0. .Q.V.O. .1.T.B...................A..........................>..Gd-.;.A..MQ..L.5.S.R.R.F.N.R.0.3.B.0.5.9.7. .P. . . . .......BO..NO........o.S.a.m.s.u.n.g. .S.S.D. .8.7.0. .E.V.O. .1.T.B...................A..........................>..Gd-.;.A..MQ..L.6.S.U.P.M.N.T.0.3.5.7.8.4.2. .L. . . . .......BO
Boot0007* UEFI OS    HD(2,GPT,1eded8dc-d1ab-4723-b499-b718400c1898,0x800,0x100000)/File(\EFI\BOOT\BOOTX64.EFI)..BO
Boot0008* UEFI OS    HD(2,GPT,ed10b328-3615-45c0-bf5b-b117031e4c22,0x800,0x100000)/File(\EFI\BOOT\BOOTX64.EFI)..BO
grub2
  • 2 2 个回答
  • 43 Views

2 个回答

  • Voted
  1. Best Answer
    telcoM
    2023-02-17T00:00:16+08:002023-02-17T00:00:16+08:00

    有效的事实efibootmgr -v证明您的系统启用了 UEFI 运行时服务,这只有在系统以 UEFI 模式启动时才会发生。

    (正如 Marcus Müller 在评论中所说,无法进行反向推断:即使没有启用 UEFI 运行时服务,也可以在 UEFI 模式下启动,要么是因为固件选择不提供它们,要么是因为内核缺少必要的构建时选项来使用它们。在较新的内核中,也可以通过引导选项禁用 UEFI 运行时服务,例如解决特定 UEFI 固件实现中的错误。)

    BootCurrent: 0004
    [...]
    Boot0004* Linux Boot Manager    HD(2,GPT,ed10b328-3615-45c0-bf5b-b117031e4c22,0x800,0x100000)/File(\EFI\SYSTEMD\SYSTEMD-BOOTX64.EFI)
    

    当您的系统启动时,它使用了引导选项,该选项在 PARTUUID 为的分区上Boot0004使用。所以你目前正在使用. 您可以看到带有 的 PARTUUID 。systemd-bootx64.efied10b328-3615-45c0-bf5b-b117031e4c22systemd-bootlsblk -o +partuuid

    您的dd if=/dev/sda bs=512 count=1 2>/dev/null结果表明该i386-pc磁盘上已在某个时候安装了 GRUB 的 BIOS 兼容版本,但除非系统配置为启用了 BIOS 兼容模块 (CSM),否则它对于 UEFI 固件将完全没有意义。有可能(虽然不确定)Boot0006引导选项可能代表在 BIOS 兼容模式下从该磁盘引导。

    请注意,i386-pcGRUB 的版本并不完全包含在主引导记录块中:它还需要将 GRUB 核心映像的其余部分嵌入到磁盘上的固定位置。在 MBR 分区的磁盘上,MBR 和第一个分区开头之间未使用的空间通常用于此目的;在 GPT 分区磁盘上,此空间由 GPT 分区表结构占用,因此需要专用的“biosboot”分区才能从 GPT 分区磁盘使用 BIOS 样式的 GRUB 进行引导。

    但是,Microsoft 选择在其 Windows 操作系统中将引导方法和分区方案结合在一起,因此安装到 MBR 分区磁盘的 Windows 将只能以 BIOS 方式启动,而安装到 GPT 分区磁盘的 Windows 将只能曾经以 UEFI 风格启动。引导管理器通常无法在引导方式之间切换,因此如果您安装了多个操作系统,对所有操作系统使用相同的引导方式(BIOS 或 UEFI)是最方便的。

    Windows Boot Manager输出中存在的文本efibootmgr -v表明您可能有一个以 UEFI 模式启动的 Windows 操作系统,因此如果您想使用 GRUB,您应该使用x86_64-efiGRUB 的 UEFI 本机版本而不是i386-pcBIOS 版本。

    • 1
  2. ron
    2023-02-16T13:04:50+08:002023-02-16T13:04:50+08:00

    https://itsfoss.com/check-uefi-or-bios/

    给出了 windows 和 linux 的答案

    在 Linux 中,在你进入 SSH 之后, 找出你运行的是 UEFI 还是 BIOS 的最简单方法是查找文件夹/sys/firmware/efi。如果您的系统使用 BIOS,则该文件夹将丢失。

    • -2

相关问题

  • 无法在 UEFI 中启动实时 Linux 多重引导 USB

  • grub2-mkconfig 没有生成正确的挂载路径(以及如何摆脱不再使用的额外内核?)

  • 如何在 debian 上找到内核崩溃日志

  • Ctrl + C 在 Linux 上的单用户模式下不起作用

  • GRUB 配置以识别同一 Linux 发行版的不同桌面环境(安装)

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve