Wie kann die Allgegenwart gezwungen werden, Grub nicht zu installieren?

9

Meine Festplattenpartitionen:

  • esp -> sda1
  • archlinux -> sda2
  • Swap -> sda3
  • sda4 -> wäre ein Ort für Ubuntu

Ich werde Ubuntu auf sda4 installieren; Derzeit wird mein Startvorgang von systemd-boot gesteuert, das in archlinux über die bootctl-Software installiert wird. Es ist in Ordnung und ich würde es gerne behalten.

Durch die Installation von Ubuntu wird versucht, grub auf sda oder sdaX zu installieren. Schauen Sie sich das Dropdown-Menü in diesem Screenshot an:

Geben Sie hier die Bildbeschreibung ein

Ich möchte Ubuntu auf sda4 installieren, ohne mich mit grub zu befassen. Dann werde ich auf die Ubuntu vmlinuz-Datei und die initrd-Datei verweisen, indem ich eine neue Eintragsdatei in archlinux unter dem Systemd-Boot-Konfigurationssystem erstelle.

Mini
quelle
Ich weiß , dass die Existenz von preseed gibt es die Möglichkeit für Bootloader auf Ubiquity
blkpws
2
Denken Sie nicht, dass es eine Möglichkeit gibt, Grub einfach zu vermeiden, aber Sie könnten versuchen, es auf sda4 zu installieren und es dann mit dd zu überschreiben.
Mike, was auch immer
Nun, das ist eine interessante Frage ...
You'reAGitForNotUsingGit
Dies war gültig mit 12.04, hat es nie benutzt. sudo ubiquity -bGehen Sie in das Live-Installationsprogramm und starten Sie es vom Terminal aus.
Oldfred
@oldfred, Scheint, es gibt keine -bOption: manpages.ubuntu.com/manpages/xenial/man8/ubiquity.8.html
Mini

Antworten:

4
sudo ubiquity -b

Gerade installiert 16.10 durch direktes Booten von ISO auf sda mit grub's loopmount. Einmal im Installationsprogramm ging in Terminal und verwendet oben Befehl. Eine andere Installation schien normal zu sein. Ich habe es nicht bemerkt, bis ich durchgeklickt hatte, aber es fehlte ein ziemlich sicheres Kombinationsfeld für die Installation von grub. Und während des Installationsprozesses heißt es normalerweise, Grub zu installieren, aber das hat sich nie gezeigt.

Normalerweise überschreibt eine Installation in SDB oder eine zweite Installation meinen Ordner / EFI / Ubuntu mit dem Start meiner Hauptinstallation. Diesmal konnte ich einfach wieder in meine Hauptinstallation booten

Und das Laufen sudo update-grubfand immer noch die neue Installation, obwohl grub "nicht installiert" war. Es wurde auch keine grub.cfg in / boot / grub festgestellt.

oldfred
quelle
sudo ubiquity -b-> i.stack.imgur.com/ZTYaB.png Sie meinen, wenn ich in dieser Phase fortfahre, wird Grub nicht installiert, oder?
Mini
Beachten Sie, dass Sie kein Kombinationsfeld benötigen, das normalerweise für die Installation von grub angezeigt wird. Etwa auf halber Höhe befindet sich der Partitionierungsbildschirm mit dem Kombinationsfeld, auf dem der Bootloader installiert werden soll. askubuntu.com/questions/343268/… Beachten Sie, dass der Versuch, grub auf einer Partition zu installieren, nur mit dem BIOS funktioniert, nicht mit UEFI.
Oldfred
1

Ich kenne keine Methode, um die Installation von Grub zu verhindern. Sie können jedoch vermeiden, dass /dev/sdaandere Partitionen Ihres / dev / sda-Laufwerks von Grub berührt werden.

Stecken Sie einen zweiten USB-Stick in den Computer. Wählen Sie es während der Installation als Startgerät aus. Installieren Sie nun Ubuntu auf Ihrem / dev / sda4. Der Installationsvorgang berührt Ihre Bootsektoren von / dev / sda oder einer anderen Partition mit Ausnahme der nicht /dev/sda4.

LD James
quelle
1

Ich weiß, dass unter Linux Mint 18.3 Cinnamon, das auf Ubuntu 16.04 basiert, der folgende Befehl funktioniert:

ubiquity --no-bootloader

Dies ist anscheinend ein Alias ​​für die Option -bund funktioniert bekanntermaßen unter Linux Mint 18.3 Cinnamon.

Ich habe nicht überprüft, ob das --no-bootloaderTag ubiquityin Vanilla Ubuntu 16.04 (und späteren Versionen) funktioniert . Vielleicht kann jemand, der Ubuntu 16.04 (oder eine andere Version) ausführt, hier mit seiner Versionsnummer überprüfen und kommentieren, ob der ubiquity --no-bootloaderBefehl funktioniert? Wenn dies funktioniert, wird Ubiquity nach der Authentifizierung mit dem GUI-Authentifikator geladen. Wenn dies nicht funktioniert, kehren Sie nach der Authentifizierung mit dem GUI-Authentifikator zum Terminal zurück und es wird eine Fehlermeldung mit der Meldung angezeigt ubiquity: error: no such option: [...].

Screenshot der Allgegenwartsoptionen in Linux Mint 18.3 Cinnamon:

Ausdruck der Allgegenwartsoptionen vom Terminal unter Linux Mint 18.3 Cinnamon

Siehe auch:

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

blueuser
quelle
1

Sie können nicht erzwingen, den Bootloader standardmäßig nicht zu installieren.

Während @oldfred erwähnt hatte, dass es eine -bOption für die Allgegenwart gibt, obwohl nicht dokumentiert, ist dies nicht offensichtlich und kann für die meisten Endbenutzer beängstigend sein, sie zu verwenden. Eine ähnliche Option gab es jedoch schon früher.

Früher gab es

In der Vergangenheit hatte Ubuntu eine erweiterte Option, mit der Benutzer die Installation des Bootloaders anpassen können. Zwischen den Ubuntu LTS-Versionen wurde die erweiterte Option zuletzt in der Version Lucid Lynx (10.04) gesehen. Die Option wurde seitdem aus irgendeinem Grund entfernt, den ich nicht weiter verfolgt habe.

Alter Screenshot als Beweis:

Schritt 8/8 des Ubiquity-Installationsprogramms in Ubuntu Lucid

Installieren Sie auf derselben Partition

In einem bestimmten Schritt kann nur ein anderes Gerät als das primäre Gerät /dev/sdafür die Bootloader-Installation ausgewählt werden. Beispielsweise wird Ubuntu auf einer /dev/sda4Partition installiert , sodass auch der Bootloader installiert werden soll /dev/sda4.

Auf diese Weise hat der Benutzer:

  • Ein neuer Bootloader /dev/sda4wird ausgeblendet, es sei denn, der Computer startet mit der Option, die Partition zu laden, um sie anzuzeigen

  • Der vorhandene Bootloader at /dev/sdaübernimmt die Erkennung des neu installierten Betriebssystems at /dev/sda4, ohne sich auf den neuen Bootloader verlassen zu müssen

  • Der Benutzer muss den Bootloader /dev/sdavom ersten installierten Betriebssystem aus aktualisieren , um anschließend installierte Systeme auf anderen Partitionen zu erkennen

Sofern es keinen kritischen Grund gibt, sich überhaupt nicht mit dem Bootloader zu befassen, sehe ich keinen Nebeneffekt bei der Installation nachfolgender Bootloader auf den jeweiligen Partitionen.

Erster Bootloader verwaltet alle

Persönlich habe ich mehrere Distributionen (hauptsächlich Ubuntu-Varianten und ähnliche Derivate) auf demselben Computer installiert, mit dem ersten Bootloader /dev/sdaund anderen Bootloadern auf den jeweiligen Partitionen. Die einzige Einschränkung ist, dass der Bootloader vom ersten installierten Betriebssystem aktualisiert werden muss.

Abgesehen von der Einschränkung kann man mit minimalem Aufwand immer neue Bootloader vergessen und den vorhandenen Bootloader die Erkennung verwalten lassen.

TL; DR Installieren Sie einen neuen Bootloader auf derselben Partition, auf der das System installiert wird. Der neue Bootloader ist dem Benutzer ohnehin verborgen, es sei denn, er wird auf diese Partition verkettet.


Verwandte : Ich hatte diese ältere Antwort geschrieben , die ein Dual-Boot-Setup erklärt, das os-proberdurch Kettenladen auf die Partition erwähnt und umgangen wird.

Clearkimura
quelle
1
Dies ist ein großartiger Trick, aber AIUI funktioniert nur für BIOS-Systeme, nicht für UEFI-Systeme.
Peter Green