因此,我的任务是为大约 600 台 HP 台式机配备 Ubuntu 16.04.2 LTS 版本。
我使用 CloneZilla 来镜像主硬盘,但出现了一些问题。
- 当我准备好使用硬盘时,它无法启动。我通过在 USB 上安装 Boot-Repair 解决了这个问题。应用修复后,Ubuntu 启动菜单正常显示。
- 第二个问题是,启动时你看不到 Ubuntu Splash Logo。相反,你会看到黑屏。我发现这要感谢这个答案这是因为内核启动速度比图形驱动程序快。我应用了建议的修复,它完全按照我的要求运行。
现在来谈谈真正的问题。有没有办法在修复 grub 的同时修复我的启动徽标问题?尽管修复启动徽标的过程并不耗时,但在 600 台电脑上应用它可能很耗时。
提前致谢,如果我的英语让您头疼,我很抱歉。
编辑:插入硬盘后,通过每台电脑上的可启动 USB 应用 1. 中的修复。
答案1
第一个问题很可能是由于现代基于 EFI 的计算机将引导加载程序信息存储在 NVRAM 中。因此,当您将工作安装镜像到新计算机时,除非您明确添加 NVRAM 条目,否则计算机将不知道如何引导。我想到了一些可能的解决方案:
- 创建正确的启动项-- 如果您使用目标计算机镜像磁盘,则可以使用 明确创建启动项
efibootmgr
。 很有可能efibootmgr -c -l \\EFI\\ubuntu\\shimx64.efi -L ubuntu
会成功,但您可能需要添加-d
和/或-p
选项,具体取决于磁盘的布局方式。(man
有关其选项的详细信息,请参阅页面efibootmgr
。)这可能是最好的解决方案如果您使用目标系统进行镜像;但如果您从目标系统拉出磁盘并使用另一台计算机镜像磁盘,则此解决方案将不起作用,除非您愿意使用紧急磁盘对目标计算机进行一些清理工作。此解决方案还要求EFI 系统分区 (ESP)和其他一切事物一起被镜像。 - 使用后备文件名--您可以复制这些文件
EFI/ubuntu/shimx64.efi
,EFI/ubuntu/grubx64.efi
以便系统使用后备文件名在EFI/BOOT/bootx64.efi
ESP 上。也就是说,您需要执行类似 的操作sudo cp -a /boot/efi/EFI/ubuntu /boot/efi/EFI/BOOT
,然后执行sudo mv /boot/efi/EFI/BOOT/shimx64.efi /boot/efi/EFI/BOOT/bootx64.efi
。(这将来自正常运行的已启动安装;如果您在某种紧急环境中进行了这些更改,则必须调整路径。)如果不efibootmgr
存在显式 NVRAM 条目(由 创建的),EFI 将尝试使用后备文件名进行启动,因此这样做应该可以让您的克隆系统启动。问题是,如果没有额外的步骤,GRUB 的更新将无法正确安装。 - 以 BIOS/CSM/传统模式安装-- 您可以在 BIOS/CSM/传统模式下安装,而不是在原生 EFI/UEFI 模式下安装。当目标计算机重新配置为支持此启动模式时,它们应该可以启动,而无需 NVRAM 条目指向正确的启动加载程序。不过,这种方法可能需要更多地摆弄目标计算机上的固件设置,因此可能不值得这么麻烦。
您也可以结合使用前两种方法 - 即将 Shim/GRUB 复制到首次启动的后备文件名,但配置计算机以启动脚本以在EFI/ubuntu/shimx64.efi
首次启动时将 NVRAM 条目添加到引导加载程序中。