Probleme beim Installieren von grub2 in ein loopback-device

Debian auf Notebooks und speziellen Geräten wie eingebetteten Systemen, Routern, Set-Top-Boxen, ...
Antworten
multisync
Beiträge: 6
Registriert: 18.02.2017 16:14:06

Probleme beim Installieren von grub2 in ein loopback-device

Beitrag von multisync » 30.06.2017 16:32:38

Hallo zusammen,

ich habe mir eine Intel NUC gekauft die ich als NAS betreiben will. Als OS will ich Debian GNU/Linux einsetzen, welches von SD-Karte starten soll.

Das Image fuer die SD-Karte will ich auf meinem Debian-Hostsystem erstellen, so dass ich es nur noch auf die SD-Karte schreiben muss.

Folgende Schritte habe ich ausgefuehrt:
  • Erstellen einer Abbilddatei mit `fallocate`
  • Bereitstellen der Abbilddatei als Blockspeichergeraet `/dev/loop0` mit `locontrol`
  • Erstellen eines Dateisystems auf dem Blockspeichergeraet mit `sudo mkfs.ext4 -E lazy_itable_init=0,lazy_journal_init=0 /dev/loop0 1 512M`
  • Einhaengen des Dateisystems
  • Installieren eines Debian-Basissystems mit `debootstrap`
  • Bind-mounten von /sys, /proc und /dev in den Einhaengepunkt und `chroot` hinein
Als naechstes versuchte ich, in mein zukuenftiges Image installieren. Hierzu bin ich mit chroot in das kuenftige Wurzelverzeichnis hinein, und habe dort `grub-install /dev/loop0` eingegeben. Daraufhin bekam ich folgende Meldung:

Code: Alles auswählen

root@manuelthinkpad:/# grub-install /dev/loop0
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..
grub-install: error: will not proceed with blocklists.
Mit dieser Fehlermeldung kann ich nicht viel anfangen, da das Dateisystem von /dev/loop0 ext4 und nicht ext2 ist.

Koennt ihr mir Tipps geben wie ich nun weiter vorgehen soll? Mein erster Plan sah eigentlich vor, aufgrund seiner Schlankheit `lilo` als Bootloader einzusetzen, jedoch ist fuer grub mehr Information im Internet verfuegbar.

Vielen Dank!
multisync

multisync
Beiträge: 6
Registriert: 18.02.2017 16:14:06

Re: Probleme beim Installieren von grub2 in ein loopback-dev

Beitrag von multisync » 30.06.2017 17:03:58

Hoppla, ich denke ich war ein bisschen vorschnell beim Erstellen dieses Diskussionsfadens.

Ich habe bemerkt, dass ich einen Fehler gemacht habe. Ich habe das Dateisystem direkt auf dem Geraet angelegt, anstatt in einer Partition.

Ich wollte jetzt also meinen Fehler korrigieren, und habe auf dem Loopback-Device `/dev/loop0` mit gdisk eine GPT-Partitionstabelle und Partition erstellt. Um auf der Partition ein Dateisystem installieren zu koennen, habe ich das Loopback-Device detached und anschliessend neu verbunden:

Code: Alles auswählen

manuel@manuelthinkpad:~/nas$ sudo losetup --show --find --partscan sdcard.img 
/dev/loop0
Durch die `--partscan`-Option haette ich mir jetzt eigentlich erwartet ein zweites Loopback-Device zu sehen: `dev/loop0p1`.

Als naechstes waere also herauszufinden, warum diese Partition nicht gefunden wurde...

multisync
Beiträge: 6
Registriert: 18.02.2017 16:14:06

Re: Probleme beim Installieren von grub2 in ein loopback-dev

Beitrag von multisync » 30.06.2017 17:33:34

Durch explizite Angabe des Partitionsbeginns konnte ich die Partition nun einhaengen und auf ihr ein Dateisystem einrichten.

Nach Installation von grub2 und einrichten desselbtigen mit `grub-install /dev/loop0` besteht das urspruengliche Problem nun wieder:

Code: Alles auswählen

root@manuelthinkpad:/# grub-install /dev/loop0
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..
grub-install: error: will not proceed with blocklists.

Antworten