首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >GRUB和SYSLINUX有什么区别?

GRUB和SYSLINUX有什么区别?
EN

Ask Ubuntu用户
提问于 2015-07-23 19:28:42
回答 2查看 33.2K关注 0票数 18

这个问题与我的发现有关,Ubuntu及其衍生产品在桌面版本的ISO映像上同时使用SYSLINUX和GRUB引导加载器。

当从32位ISO映像引导时,据说SYSLINUX处理引导过程(显示漂亮的启动屏幕,带有进度点动画)。

但是当从64位ISO映像引导时,使用GRUB代替(黑白屏幕,在屏幕顶部清楚地显示GNU GRUB version... )。

因此,换句我的问题,使Ubuntu在其ISO映像上使用GRUB和SYSLINUX的区别是什么?为什么不直接用其中一种呢?

用于澄清

由于我缺乏澄清和硬件可用性,这个问题一直令人困惑。我增加了这个答案 (或向下滚动),以解释更好的64位ISO图像.

什么答案不是

下面的评论线已经给出了一些想法,但我应该在这里说清楚。答案并不是因为任何一方都支持EFI。这个问题旨在找出更多的根本原因,而不仅仅是EFI的支持。

比如说,如果这是以其他方式被问到的话。“为什么在ISO映像中同时使用GRUB和SYSLINUX?”然后,这可能会给出这样的回答:"GRUB是用来支持EFI的系统,SYSLINUX一直被包括在BIOS上--只在系统上工作“--这不是我的意图。

我必须承认,支持EFI很可能是答案的一部分。

不过,我觉得这不应是唯一的答案。肯定有更多的EFI支持,这使得Ubuntu在他们的ISO映像中包含了两个引导加载器,是吗?或者,这真的是EFI支持的唯一区别吗?如果有的话,帮我回答。

EN

回答 2

Ask Ubuntu用户

回答已采纳

发布于 2016-10-19 08:18:32

这是我的最后一个答案,它基于在2000+页面中匹配Ubuntu的这个清单页面中的关键字找到的信息。我发现的是Ubuntu开发和规范(读:单词、单词、单词)的日期说明,所以我花了一些时间才得到这个答案。

操作,错误命名

首先,应澄清启动加载程序的命名:

  • 所有字母大写的名称都是指引导加载程序(例如GRUB,SYSLINUX)
  • 带有大写大写字母的名称是指项目名称或引导加载程序系列的几个或所有变体(例如Syslinux)。
  • 特别是,“SYSLINUX”是一组引导加载程序,包括“SYSLINUX”、“ISOLINUX”、“EXTLINUX”和“PXELINUX”。

命名惯例之后,问题实际上是"ISOLINUX“,指的是"El Torito no-仿真”引导加载程序,而不是"SYSLINUX“。也许后者在过去是与前者互换使用的。那就不介意了。

简史

2005: ISOLINUX是为Ubuntu引导加载程序选择的,而不是GRUB。

GRUB以前曾被建议作为一种可能的替代引导加载程序,但是这种方法在Warty live中进行了尝试,在那里我们观察到在引导性与使用安装CD的ISOLINUX之间存在显著的回归。我们认为,坚持基于ISOLINUX的解决方案是长期支持的发行版最合适的方法。-来自CdBootloader - Ubuntu

2006:添加了gfxboot;这支持2010年引用的信息。

在Dapper中,我们在amd64和i386 CD映像中添加了gfxboot,提供了友好的图形引导菜单,这是用户在这些体系结构( ... -- from PortableGfxboot - Ubuntu )上引导Ubuntu映像时首先看到的东西。

2009年: ISOLINUX (称为SYSLINUX)仍然用于启动Ubuntu CD。

Ubuntu活动CD仍然使用SYSLINUX引导,这不包括对在图形模式下启动内核的支持。这意味着live显示一个图形引导菜单,然后切换回文本模式来启动内核,然后通常会在稍后切换回图形模式。因此,在启动时,活动CD当前会比正常安装的系统闪烁得更多。-来自BootGraphicsArchitecture - Ubuntu

2010年: ISOLINUX已经被使用,但是UEFI支持需要GRUB 2。

当前的Ubuntu使用ISOLINUX,使用来自SuSE的gfxboot扩展来实现图形菜单。事实证明,这是相当难维护的,因为在Ubuntu中,只有一位了解... GRUB 2所涉及的主题代码的人最近向上游添加了图形菜单支持,这样做有可能减少我们的维护负担。看来我们无论如何都需要使用GRUB 2来支持EFI,在CD上配置两个不同的引导加载程序是不可取的。-根据基金会的创建团队/规范/MaverickCDBoot- Ubuntu -m-grub2-启动-框架缓冲区,我们需要研究我们在EFI中支持图形引导菜单的能力。GRUB对UGA和GOP图形有一定程度的支持。这需要使用GRUB进行CD引导,或者至少有最低限度的配置来支持它-- ... --来自FoundationsTeam/Specs/MaverickUefiSupport - Ubuntu Wiki

差异是否存在

在简短的历史之后,我们现在了解到:

  • ISOLINUX是首选的,因为GRUB有回归,当时(2005年)
  • ISOLINUX仍然是首选的,尽管不支持在图形模式下启动内核,这会导致启动转换期间的闪烁(2009年)。
  • ISOLINUX已与gfxboot一起使用以提供图形菜单,该菜单在GRUB上未实现或不可能实现(2010年)
  • 自从Maverick (2010年后)以来,GRUB被添加到UEFI支持的引导中。

然后,我意识到并不是GRUB和SYSLINUX之间的区别使得Ubuntu的live包括两个引导加载程序。

基本原因

从我的阅读来看,这些支持性的事实实际上暗示:

  1. Ubuntu一直在使用特定的引导加载程序,它能够更好地支持提供图形菜单和主题,以及平滑的过渡以显示启动启动。在这种情况下,SYSLINUX (精确地说是ISOLINUX)。
  2. 当UEFI系统变得越来越普遍时,只有Ubuntu在Ubuntu live中包含了GRUB (确切地说是GRUB 2),以便在UEFI支持下启动。

最重要的是,我相信这回答了我一年多来的问题,这个答案终于使我的好奇心得到了缓解。

TL;DR和ISOLINUX都是在Ubuntu live中使用的,它们都被包含在live中,以获得更好的引导体验和硬件支持。

票数 23
EN

Ask Ubuntu用户

发布于 2015-08-11 17:32:05

这是我的初步答案,这使我的问题的某些部分得到了更好的理解,但仍然没有回答问题本身。

以下是一些澄清:

  • 与32位ISO映像不同,64位ISO映像实际上包括GRUB和SYSLINUX (这是由/boot/grub/isolinux目录都在ISO映像中确认的)。
  • GRUB显示时,ISO映像是引导在EFI的机器上。
  • SYSLINUX在BIOS专用机器上引导ISO映像时显示.
  • 普利茅斯处理进度点动画,无论GRUB还是SYSLINUX都会显示(这是@muru在第一个注释中正确表示的)。

引导体验:我写了“EFI能力”,因为即使是我的机器也实现了EFI,为了从Live启动Ubuntu (在我的例子中是Xubuntu14.04),我关闭了“安全启动”功能(1,2)。

  1. Xubuntu14.04 64位版本可以在打开安全引导时启动,这是在安装到本地磁盘(而不是Live )之后。
  2. Xubuntu16.04 64位版本能够在打开安全引导时启动。

尝试方法:我没有尝试使用物理DVD媒体和从外部光驱引导,而是使用虚拟化软件(在我的例子中是VirtualBox 4.3 )来证明上述情况。

  • VirtualBox 4.3已经有了在EFI和BIOS系统之间切换的选项,可以在机器>设置>系统>主板扩展特性:启用EFI (仅限特殊OSes )下找到。默认情况下,该选项未选中(3)。
  • 虚拟机必须使用64位版本的VirtualBox创建,运行在64位主机系统上.在下面的尝试中使用了Xubuntu14.04 64位ISO映像。
  • 第一次尝试:我使用默认设置运行ISO映像(这假设是BIOS系统)。虚拟机将显示紫色的背景和图标在底部。这是SYSLINUX。
  • 第二次尝试:我关闭机器并进入设置,检查选项(3)以启用EFI。使用相同的ISO映像,我再次启动虚拟机。这一次,它需要一段时间才能显示带有单色文本的GNU GRUB version...。这是稀饭。
  • 在这两次尝试中,继续引导进程将显示启动时的进度点动画。
  • Ubuntu上的这一页提供了截图来描述上述两种情况。

免责声明:这个答案旨在澄清引导经验和尝试的方法。不过,这并不是我问题的最后答案。如果我能自行回答问题,最后的答案将单独张贴.

票数 7
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/651902

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档