删除GRUB并保留Linux系统


18

我在Internet上搜索了有关如何删除GRUB的说明,但是我唯一能找到的就是使用Windows DVD对系统进行“修复”。我以前有Windows / Linux doal-boot并删除了Windows(GParted + Boot-Repair),但是GRUB仍然仅安装了一个条目:Linux。

如何卸载GRUB并直接在基于Debian的OS 上启动?


2
2.5 年前,13年前取消了对不使用引导加载程序直接引导Linux的支持。之所以将其删除是因为与使用完整的引导加载程序相比,当时它已经遭受了重大缺陷。
kasperd '16

2
@kasperd好吧,现在又回来了,通过EFIstub。
underscore_d

@underscore_d可能会。我对EFI的了解还不够多,无法说明两者是否具有可比性。
kasperd '16

对于任何找到这个并且实际上确实想要删除的人grub这个答案实现了我的追求,即使用另一个发行版作为bootloader并完全禁用ubuntu。tl; dr: apt-get remove grub*然后apt-mark hold grub*
亨迪

Answers:


36

虽然可以卸载GRUB,但这意味着您必须设置另一个引导程序,可能不值得。没有理由使用另一个,因为您只想隐藏GRUB屏幕。我相信所有其他引导加载程序都以类似的方式工作,因此您不必担心安装其他内容。


如果您想做的就是隐藏 GRUB。这是可能的,而且非常容易。按Alt+ F2并粘贴此内容,然后再点击Entergksudo gedit /etc/default/grub

将打开一个文本编辑器窗口,显示如下内容:

GRUB_DEFAULT=0
#GRUB_HIDDEN_TIMEOUT=0
#GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=”`lsb_release -i -s 2> /dev/null || echo Debian`”
GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash”
GRUB_CMDLINE_LINUX=”"

删除和#之前的两个。保存文件,打开终端并运行。重新启动,您应该没有GRUB窗口出现。GRUB_HIDDEN_TIMEOUTGRUB_HIDDEN_TIMEOUT_QUIETsudo update-grub

同时设置GRUB_HIDDEN_TIMEOUT1避免潜在的问题。GRUB会闪烁,但不会停在那里10秒钟。


如果需要,可以以图形方式执行此操作。

在终端窗口中运行以下命令:

sudo add-apt-repository ppa:danielrichter2007/grub-customizer 

sudo apt-get update

sudo apt-get install grub-customizer

完成后,搜索并打开GRUB Customizer。

转到常规标签,然后取消选择show menulook for other operating systems。单击刷新按钮(右上角附近的蓝色圆形箭头),然后单击保存。

注意: GRUB Customizer似乎不支持基于EFI / GPT的系统。)

重新启动,看不到引导加载程序。

资料来源:http : //ubuntuhandbook.org/index.php/2014/06/ubuntu-1404-hide-grub-menu/


4
仍然是一个可怕的答案。再说一遍:除了GRUB之外,还有很多引导系统的方法和许多引导管理器。您的字面意思是告诉人们他们很想要任何一个。最重要的是,在多引导系统上,当它们都可以相互检测并引导时,您当然不一定需要使用单个 OS的GRUB。说真的,为什么“如何删除GRUB”的答案总是“这里是如何保留GRUB”的?如果您不知道怎么做,请不要回答。发表评论。如果这样做,请至少在您发表意见之前发布一个实际上可以回答该问题的答案
Mehrdad

1
为什么这么苛刻@Mehrdad?为什么所有这些粗体文本?虽然确实GRUB并不是唯一的引导加载程序,但我认为他/她已经正确地将问题确定为XY问题的明确案例,在该问题中,有99%的询问如何删除GRUB的人并没有对此表示怀疑。传递给另一个引导程序,只想摆脱初始菜单。问题是“错误的”。答案是绝对正确的,恕我直言。
安德里亚·利吉奥斯

1
@AndreaLigios我对Mehrdad感到沮丧的是,该答案目前被投票为最有用。毕竟他是对的:这个答案真的根本没有答案。如果您认为错误的转弯并在此处结束是很常见的,则向人们发出警告并不是一个坏主意,但是您应该继续回答这个问题。
thohl

11

所有其他答案都很好,建议您无论是否看到GRUB通常都会在那里,您可能不应该开始随机拍摄照片,以及如何将系统还原到您(大概)以前的“隐藏的GRUB”享受。

但是,它们最终会出错-在并非如此的情况下做出始终要求使用GRUB的笼统声明。我猜他们在简化您的假设(您的(XY)问题实际上是“我如何像以前一样制造东西?”,而不是专门地“我如何销毁GRUB?” 的假设)。但是我担心的是,即使不合格,这种回应也会适得其反:他们不仅表示自己没有替代方案,而且还完全省略了替代方案。

因此,作为参考,我可以从日常经验中说Debian现在附带了一个已编译到其内核中的UEFI存根,从而使该固件可以在没有任何中间人的情况下直接启动,前提是该固件是符合EFI要求的固件。这不是深奥的知识,尽管它也不是默认值。无论如何,毫不奇怪,Ubuntu似乎继承了此功能并且可以完美使用它,例如:如何使用EFI存根(efistub)加载程序来引导加载内核?

但是,尽管从技术上讲,这与您的问题相符,但是您可能一直没有问过自己以为在问什么!最好将其与其他答案的其他(正确!)部分结合起来,并确定(隐藏的)GRUB或EFI是否适合您。通常采用免责声明:如果您在技术上还没有信心,请不要混淆EFI。仅将此类链接之类的线程视为一个示例:完全根据您的系统需求进行自定义。请享用!


10
你是对的,underscore_d,但它远不止于此。如果计算机以BIOS / CSM / Legacy模式引导,则默认GRUB 2的替代方法包括LILO,SYSLINUX和GRUB Legacy。如果以EFI模式启动,则替代品包括ELILO,SYSLINUX,GRUB Legacy和EFI存根加载器,最后一个可以通过固件的内置引导管理器,gummiboot / systemd-boot,rEFInd甚至(尴尬)。总之,引导加载程序(和引导管理器)选项的数量非常大。从GRUB 2切换可能不是Magix的最佳选择,但是确实存在替代方法。
罗德·史密斯

1
@RodSmith Excellemt点!也许您应该把它作为答案,因为它可能比我的应该得到更多的选票。:)我主要是根据经验写的:GRUB是最受欢迎的,我直接从中学习到EFIstub。我已经使用rEFIt修复了我的EFI(它是越野车...),并简短地听说了其余的信息,但是昨天他们没想到(太累了!)
underscore_d

4

我没有足够的知识来回答天气是否需要GRUB,但是如果您的目标是完全隐藏GRUB,那么我会得到一个比公认的答案更好的解决方案。

为了实现最快的引导,除非让GRUB在启动过程中按住Shift键,否则GRUB可能不打印菜单,而不是让GRUB等待超时。这使您可以快速启动到默认操作系统,但是在不经常需要时可以灵活地启动到另一个已安装的操作系统。

为了实现这一点,您应该将以下行添加到/ etc / default / grub中:

 GRUB_FORCE_HIDDEN_MENU="true"

然后在名为“ /etc/grub.d/”的文件中创建该文件31_hold_shift,使其可执行,然后重新生成grub配置文件:

chmod a+x /etc/grub.d/31_hold_shift
update-grub

那应该做的!

在此处找到更多GRUB技巧。


0

不要尝试删除grub,它用作Ubuntu的引导程序,就像您看不到的Windows mbr一样。

您可以尝试安装程序grub-customizer,该程序可让您在简单的GUI中为grub定义不同的设置。您可以将超时设置为0,并告诉它始终引导第一个条目,因此您无需进一步输入即可直接引导Ubuntu。

我相信当您将Ubuntu安装为唯一的操作系统时,这也会自动发生。


3
GRUB可能是默认值,但绝不是必需的。
underscore_d

4
请不要再告诉人们stop是绝对必要的。在使用EFI之前,完全有必要使用引导加载程序,但是自从EFI开始,您就不再需要它们了。Linux内核具有直接从EFI引导的方式,而无需grub,lilo,rEFInd等。顺便说一句,mbr不是引导加载程序,它只是分区要指向以找到引导加载程序的表。
Dolanor

8
BIOS模式或EFI模式引导需要引导加载程序。EFI提供了自己的启动管理器,该启动管理器可以选择启动什么内容。但是引导加载程序(将控制权转移到内核)仍然是必需的。值得一提的是,EFI存根加载器将内核变成了自己的EFI模式引导加载器,但从技术上讲,它仍然是引导加载器。GRUB 2只是可用的几种引导加载程序之一,但它是Ubuntu的默认默认值。
罗德·史密斯

哦,好的,我没有意识到这一点。感谢您的澄清。我的理由是,查询者不应简单地试图删除grub,可能最终导致无法启动的系统,因为这不是问题的重点。相反,我试图弄清楚只需更改grub设置即可达到所需的结果。;-)
Prototype700

@RodSmith:嗯。我不知道UEFI没有被视为引导程序。我知道存根加载器,但不是真正的引导加载器。使事情更清晰。谢谢。
Dolanor '16

0

无论如何,您将需要一个引导加载程序。如果您不喜欢grub,还有其他方法:请参阅Boot Loader的比较

但是我不会使用主发行版中未提供的引导加载程序。将来在升级操作系统时可能会给您带来很多麻烦。

如果要从MBR(包括grub)清除引导加载程序,请使用le --mmap-rw /dev/sda:0:218零填充所有空间。您将需要LE(文本编辑器)。但是,此过程不会为您安装另一个引导加载程序,因此,如果另一个磁盘上未安装引导加载程序,则系统可能无法引导。

在MS-DOS中,fdisk /mbr c:可以在MBR中还原DOS引导加载程序。


0

您无法删除GRUB,这是必需的,Windows仅显示一些图形-图片。您需要一些东西来使用正确的驱动程序配置操作系统并正确设置它。

替代方法是“改装”和“刷新”。对于Linux,这将显示带有企鹅的灰色屏幕,并且允许您使用鼠标选择启动选项,并像在Windows上一样隐藏混乱。这些是开源项目,它只是参与并做出自己的变形,包括与Grub的整洁图形界面。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.