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
    • 最新
    • 标签
主页 / server / 问题 / 820532
Accepted
elliotp
elliotp
Asked: 2016-12-14 13:59:38 +0800 CST2016-12-14 13:59:38 +0800 CST 2016-12-14 13:59:38 +0800 CST

Ubuntu 16.04 服务器新安装无法通过 Grub(可能的 UEFI 问题)

  • 772

尝试将 Ubuntu 16.04 服务器安装到新初始化的磁盘上。使用 UEFI,和一个 4.5TB/分区。安装无问题后,在重新启动时,服务器将无法通过 Grub。

硬件:

  • 新的超微服务器
  • 硬件 6 x SSD RAID 5 - 4.5TB 虚拟磁盘
  • BIOS 全面更新

安装步骤:

选择 UEFI 虚拟 CD,即 Ubuntu 16.04 服务器。注意 - 我确实选择了 UEFI 虚拟 CD,而不是屏幕截图中突出显示的非 UEFI(我在截屏后意识到)

在此处输入图像描述

Ubuntu 默认引导分区布局,非 LVM,完全未修改。确认分区,包括 ESP 存在。

在此处输入图像描述

安装完成,没有错误。安装后,Ubuntu 在启动菜单中可见:

在此处输入图像描述

无论选择什么选项,系统都会引导至 Grub:

在此处输入图像描述

在 Grub 中,据我了解,ESP 应该安装在 /boot/efi。但是,Grub 显示错误如下,但也可以正常列出 /,但是 / 里面的任何东西,例如 /etc 都有错误,包括 /boot:

在此处输入图像描述

Grub 将分区显示为:

在此处输入图像描述

我不确定如何从这里开始。

ubuntu gpt ubuntu-16.04 uefi
  • 2 2 个回答
  • 2622 Views

2 个回答

  • Voted
  1. Chris McGowan
    2016-12-14T16:40:38+08:002016-12-14T16:40:38+08:00

    尝试使用 supergrub dvd/cd 引导。它可能会解决 grub 的问题。这在过去有时对我有用。失败只是重新安装。磁盘上的第一个分区看起来有点奇怪。该问题可能与对 ssd 的突袭有关。您可以尝试在没有 raid 的情况下进行安装,看看您的情况如何。

    • 0
  2. Best Answer
    elliotp
    2016-12-16T03:46:36+08:002016-12-16T03:46:36+08:00

    因此,经过大量测试和诊断,我找到了解决方案,但我仍然不明白为什么。如果有人可以向我解释这一点,我会奖励答案。

    问题出在 /boot 目录上。由于它在 UEFI 下安装,ESP 在 /boot/efi 下设置,在 Grub 中这工作正常,我可以读这个。

    但是,某些包含所需内核的 /boot 目录是不可读的。当我尝试手动加载内核并从 grub 启动时,内核加载正常,但是在尝试加载 initrd 时,我收到错误:

    错误:尝试在磁盘 hd0 之外读取或写入

    据我了解,这是因为 /boot 位于主 4.5TB 分区上,文件可以在驱动器上的任何位置结束,在这种情况下,以及我之前的许多测试用例,/boot 中的文件太远了驱动 Grub 阅读。

    在 ESP 分区解决此问题之前创建专用 /boot 分区。

    这与此处记录的问题相同:(根据https://carteryagemann.com/blog/102015-boot-partition.amp.html)

    然而我不明白的是,根据我的理解,在 UEFI 下,完整的 4.5TB 应该是可读的。Ubuntu 应该在它的默认分区布局下正常启动,只有和 ESP 分区?

    这得到了证实,因为我已经设法在其他 3 个相同的硬件和 bios 设置服务器上安装了没有 /boot 分区的 Ubuntu。只是这台服务器无法读取 /boot.a 的某些内容

    我已确保磁盘在 BIOS 中的 UEFI 下启动。

    • 0

相关问题

  • 无法通过 Ubuntu VPN 访问外部网络

  • ubuntu apt-get upgrade - 如何在 shell 中单击确定?

  • VirtualBox 上 Ubuntu 的访客优化技巧 [关闭]

  • 外部硬盘上的 virtualbox 虚拟硬盘驱动器(Vista 主机上的 ubuntu 客户机)

  • 如何在 Ubuntu 上挂载 LVM 分区?

Sidebar

Stats

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

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

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

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve