如何强制普遍性不安装grub?


9

我的硬盘分区:

  • esp- > sda1
  • archlinux-> sda2
  • 交换-> sda3
  • sda4->将是ubuntu的地方

我将在sda4上安装ubuntu;目前,我的启动过程由systemd-boot控制,该系统通过bootctl软件安装在archlinux中。很好,我想保留它。

通过安装Ubuntu,它将尝试在sda或sdaX上安装grub。查看此屏幕截图的下拉菜单:

在此处输入图片说明

我想在不处理grub的情况下在sda4上安装Ubuntu。然后,通过在systemd-boot配置系统下的archlinux中创建一个新的条目文件,将指向Ubuntu vmlinuz文件和initrd文件。


我知道preseed的存在是Ubiquity上引导加载程序的选项
blkpws 16-10-17

2
不要以为有一种避免grub的方法,但是您可以尝试将其安装到sda4,然后用dd覆盖它。
mikewhatever

好了,这是一个有趣的问题……
You'reAGitForNotUsingGit

这对12.04有效,从未使用过。sudo ubiquity -b进入实时安装程序并从终端启动。
oldfred

@oldfred,似乎没有任何-b选择:manpages.ubuntu.com/manpages/xenial/man8/ubiquity.8.html
迷你版

Answers:


4
sudo ubiquity -b

通过使用grub的loopmount在sda上直接引导ISO来刚刚安装16.10。进入安装程序后,进入终端并使用以上命令。其他安装似乎很正常。直到我单击完才知道,但是可以肯定的是缺少用于安装grub的组合框。在安装过程中,通常会说安装grub,但从未显示过。

通常,对sdb的安装或任何其他第二次安装都会用我的主安装引导程序覆盖我的/ EFI / ubuntu文件夹。这次,我能够重新启动到我的主要安装中

sudo update-grub即使grub“未安装” ,运行仍会找到新的安装。注意在/ boot / grub中也没有grub.cfg。


sudo ubiquity -b-> i.stack.imgur.com/ZTYaB.png你的意思是,如果我继续这个阶段,它将不会安装Grub,对吗?
2016年

请注意,您不必在通常安装grub的位置显示组合框。大约一半位于分区屏幕上,在该屏幕上有组合框,用于安装引导加载程序。askubuntu.com/questions/343268/…请注意,尝试将grub安装到分区仅适用于BIOS,不适用于UEFI。
oldfred

1

我不知道防止安装Grub的方法。但是,您可以避免/dev/sdaGrub接触/ dev / sda驱动器的分区和其他分区。

将第二个USB插入计算机。在安装过程中将其选择为引导设备。现在,在/ dev / sda4上安装Ubuntu。除了/dev/sda4。以外,安装过程不会涉及/ dev / sda或任何其他分区的引导扇区。


1

我知道在基于Ubuntu 16.04的Linux Mint 18.3 Cinnamon上,以下命令有效:

ubiquity --no-bootloader

这显然是该选项的别名,-b并且已知可以在Linux Mint 18.3 Cinnamon上使用。

我尚未验证该--no-bootloader标签可ubiquity在原始Ubuntu 16.04(及更高版本)中使用。也许运行Ubuntu 16.04(或任何版本)的人可以在此处检查并注释其版本号以及命令ubiquity --no-bootloader命令是否有效?如果可行,在使用GUI身份验证器进行身份验证后,将加载Ubiquity。如果不起作用,则在使用GUI身份验证器进行身份验证之后,您将退回到终端,并显示一条错误消息,提示ubiquity: error: no such option: [...]

Linux Mint 18.3 Cinnamon中普遍存在的选项的屏幕截图:

Linux Mint 18.3 Cinnamon上从终端提供的普遍存在选项打印输出

也可以看看:

http://averagelinuxuser.com/install-linux-mint-without-a-bootloader/


1

默认情况下,您不能强制不安装引导加载程序。

尽管@oldfred提到-b了普遍存在的选项,尽管没有记录,但这不是显而易见的,对于大多数最终用户来说,使用它可能令人恐惧。虽然,以前也有类似的选择。

这里曾经有

过去,Ubuntu有一个高级选项,允许用户自定义引导加载程序安装。在Ubuntu LTS版本之间,高级选项最后出现在Lucid Lynx(10.04)版本中。从那时起,该选项已被删除,出于任何我未跟进的原因。

旧屏幕截图作为证明:

Ubuntu Lucid中的Ubiquity安装程序的步骤8/8

安装在同一分区

在特定步骤中,可以选择除主要设备以外的其他设备/dev/sda来安装引导加载程序。例如,Ubuntu将安装在/dev/sda4分区上,因此引导加载程序也将安装在分区上/dev/sda4

这样,用户将具有:

  • /dev/sda4除非计算机正在引导并带有链式加载到分区以显示它的选项,否则将隐藏在那里的新引导加载程序。

  • 的现有引导加载程序/dev/sda将在处处理对新安装的操作系统的检测/dev/sda4,而不必依赖新的引导加载程序

  • 用户将需要在/dev/sda第一个安装的操作系统上更新引导加载程序,以便检测其他分区上随后安装的系统

除非有根本原因根本不处理引导加载程序,否则我看不到将后续引导加载程序安装到各个分区的任何副作用。

首先引导加载程序管理所有

就个人而言,我在同一台计算机上安装了多个发行版(主要是Ubuntu版本和类似的衍生版本),分别在第一个引导加载程序/dev/sda和其他分区的其他引导加载程序上安装了。唯一的警告是,引导加载程序必须从第一个安装的操作系统进行更新。

除了需要注意的麻烦之外,人们总是可以忘记新的引导加载程序,而让现有的引导加载程序来管理检测。

TL; DR在将安装系统的同一分区上安装新的引导加载程序;除非链加载到该分区,否则无论如何用户都不会隐藏新的引导加载程序。


相关文章:我已经写了这个较早的答案,它解释了双启动设置,os-prober并提到了通过链式加载到分区的解决方法。


1
这是一个很棒的技巧,但是AIUI仅适用于BIOS系统,不适用于UEFI系统。
彼得·格林
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.