"Warnung: Das Dateisystem ext2 unterstützt das Einbetten nicht." Aber auch mein System ist nicht eingebettet. Warum versucht Grub es?

34

Ich lese mich selbst für die Veröffentlichung von Jessie auf Debian, daher bin ich besonders vorsichtig (sollte paranoid sein) in Bezug auf Meldungen, die Probleme verursachen können, nämlich Warnungen. Mein System ist ein Desktop, auf dem Debian testing / unstable auf ext4-Partitionen für beide installiert ist, /bootund /dennoch wird diese Meldung während des Upgrades des grub-pcPakets in Debian angezeigt:

Installing for i386-pc platform.
Installation finished. No error reported.
Installing for i386-pc platform.
grub-install: warning: File system `ext2' doesn't support embedding.
grub-install: warning: Embedding is not possible.  GRUB can only be installed in this setup by using blocklists.  However, blocklists are UNRELIABLE and their use is discouraged..
Installation finished. No error reported.
Generating grub configuration file ...

Warum sagt Grub, dass mein System eingebettet ist? Was ist die Ursache dafür? Ich habe versucht, die grub-install-Binärdatei zu überprüfen, aber ich konnte keinen Sinn daraus ziehen.

Braiam
quelle
1
Hier geht es nicht darum, dass Ihr System eingebettet wird. embedist ein Grub-Befehl: "Betten Sie Stage 1.5 STAGE1_5 in die Sektoren nach dem MBR ein, wenn [...]". Ich verstehe allerdings nicht, woran das liegen soll ext2.
Hauke ​​Laging
2
Anscheinend ruft grub ext3 und ext4 auf; ext2, also die Warnung ist in Ordnung, siehe hier . Es scheint, dass sich die Warnung "Einbetten gegen Blocklisten" darauf bezieht, wo Grub installiert wird, MBR gegen Partitionsstartsektor.
Mehmet

Antworten:

31

Sie erhalten die Warnung, weil Sie grub auf einer Partition anstelle des MBR installieren. Dies bedeutet, dass Grub nicht in den nicht verwendeten Raum zwischen dem MBR und der ersten Partition eingebettet werden kann. Stattdessen muss die Liste der Blöcke /boot/grub/core.imgim MBR platziert sein. Dieses Setup kann durch Defragmentierung beschädigt werden und wird daher nicht empfohlen, daher die Warnung. Da es sich nur um eine Warnung handelt, können Sie sie ignorieren.

Psusi
quelle
Also ... ich musste nur die Partition in der Paketkonfiguration abwählen.
Braiam
64

Die meisten Leute, die von einer Suchmaschine darauf zugreifen, fragen sich wahrscheinlich: "Warum erhalte ich diesen Fehler?"

warning: File system `ext2' doesn't support embedding. 
warning: Embedding is not possible.  GRUB can only be installed in this setup by using blocklists.  However, blocklists are UNRELIABLE and their  use is discouraged.. 
error: will not proceed with blocklists.

Weil du es getan hast, zB:

grub-install /dev/sda1

anstatt

grub-install /dev/sda

Ich habe versucht, auf einer Partition anstelle des MBR zu installieren.

Nathan Kidd
quelle
1
Ich weiß, dass ich grub neu installiert habe, und ich habe es mit grub-install / dev / sda gemacht. Ich habe immer noch die Warnung.
Johan Herstad
Du hast eine Warnung bekommen und es ging weiter? Oder ein Fehler? Es geht in erster Linie darum, diesen Fehler zu überwinden.
Nathan Kidd
Ich bin apt dist-upgradeauf Debian gelaufen , und es hat mich idiotisch gebeten, erneut auszuwählen, wohin GRUB gehen soll (als ob ich es wüsste!). Ich habe in der Tat / dev / sda1 (meine / boot-Partition) ausgewählt. Jetzt bootet es nicht. Wenn ich eine Live-Distribution starte und grub-install ausführe, kommt es zu einer Beschwerde über das Einbetten und ich lehne es ab, fortzufahren. Reparierbar?
Boann
@Boann, ich habe zufällig mit einem ähnlichen Problem hier gearbeitet. Askubuntu.com/a/531051/149881 Vielleicht hilft es dir.
Nathan Kidd
5

Ich zitiere aus den infoSeiten von Grub2 :

MBR
====

Das Partitionstabellenformat, das traditionell auf PC-BIOS-Plattformen verwendet wird, wird
als MBR-Format (Master Boot Record) bezeichnet. Dies ist das Format, das
bis zu vier primäre Partitionen und zusätzliche logische Partitionen zulässt.
Bei diesem Partitionstabellenformat gibt es zwei Möglichkeiten, GRUB zu installieren:
Es kann in den Bereich zwischen dem MBR und der ersten Partition eingebettet werden
(mit verschiedenen Namen wie "Boot-Track", "MBR-Lücke" oder
"Einbettung") oder das Kernimage
kann in einem Dateisystem installiert werden, und eine Liste der Blöcke, aus
denen es besteht, kann im ersten Sektor dieser Partition gespeichert werden.

Jedes von diesen hat unterschiedliche Probleme. Es gibt keine Möglichkeit,
Speicherplatz im Einbettungsbereich mit vollständiger Sicherheit zu reservieren , und es
ist bekannt, dass proprietäre Software diese verwendet, um Benutzern das Umgehen
von Lizenzbeschränkungen zu erschweren . und Systeme werden manchmal partitioniert,
ohne vor der ersten Partition genügend Speicherplatz zu lassen. Auf der anderen
Seite bedeutet die Installation auf einem Dateisystem, dass GRUB anfällig dafür ist, dass seine
Blöcke durch Dateisystemfunktionen wie Tail Packing
oder sogar durch aggressive fsck-Implementierungen verschoben werden
. und dieser Ansatz kann nur verwendet werden, wenn sich das `/ boot'-Dateisystem
auf derselben Festplatte befindet, von der das BIOS bootet, so dass GRUB dies nicht tut
müssen sich darauf verlassen, BIOS-Laufwerksnummern zu erraten.

Das GRUB-Entwicklungsteam empfiehlt im Allgemeinen, GRUB vor
der ersten Partition einzubetten, sofern Sie keine besonderen Anforderungen haben. Sie müssen
sicherstellen, dass die erste Partition mindestens 31 KB (63 Sektoren)
ab dem Start der Festplatte startet. Bei modernen Festplatten ist es oftmals ein Leistungsvorteil
, Partitionen an größeren Grenzen auszurichten, sodass die erste
Partition möglicherweise 1 MB vom Anfang der Festplatte entfernt beginnt.

Das bedeutet für mich , dass ext2 ist in keiner Weise das Einbetten nicht verwandt , weil es entweder das Einbetten oder ein Dateisystem eingebunden.

Es stellt sich die Frage, was Sie getan haben, um diese Fehlermeldung (oder besser: Warnung) zu erzeugen. Ich gehe davon aus, dass dies passieren kann, wenn Grub2 angewiesen wird, sich in einer Partition anstatt auf dem Laufwerk selbst zu installieren (MBR oder erweiterte Partition).

Hauke ​​Laging
quelle
Ich habe nicht erwähnt, dass ich mich mit der ext2-Sache beschäftige, ich weiß, dass GRUB Mist über ext2 / 3/4 macht. Mein Interesse ist: 1) warum die Warnung erscheint und 2) sollte ich mir Sorgen machen
Braiam