Originalen Ubuntu-Bootloader nach sync installieren

Hallo zusammen,
hat jemand eine Idee, wie ich nach der Synchronisation des Ubuntu-Images automatisch den originalen Ubuntu-Bootloader Grub2 installiert bekomme?

Meine Ideen wären:

  1. versuchen es über das Postsync-Script zu realisieren (weiß aber nicht, wie das geht, da man hier ja nicht das Betriebssystem nutzt → geht ein grub-install überhaupt?
  2. es über ein Script zu realisieren, welches nach dem Starten von Ubuntu ausgeführt wird. Das Skript führt dann zuerst ein sudo grub-install aus und nimmt sich dann aus dem Autostart heraus (z.B. durch Löschen aus der crontab oder durch Löschen aus dem Autostartverzeichnis).

Was meint ihr?
Mein Ziel ist es dass beim Booten nur noch über F12 → Netzwerkboot LINBO gebootet wird und man sonst quasi nicht davon mit bekommt…

Danke und liebe Grüße,
Leo

Hallo Leo,

Du kannst einfach die Grub Konfiguration von Linbo so umstellen, dass automatisch das OS und nicht Linbo gestartet wird. Da kannst du dann ein Timeout setzen, innerhalb von dem Nutzer Zeit haben, zu Linbo zu wechseln.
Die entsprechende Grup Konfiguration liegt in /srv/linbo/boot/grub/<gruppenname>.cfg
Dort kannst du oben bei set default=1 eintragen und bei set timeout=5 (oder so) dann solltest du ungefähr das bekommen, was du möchtest :slight_smile:

VG, Dorian

Hallo,

Du kannst einfach die Grub Konfiguration von Linbo so umstellen, dass
automatisch das OS und nicht Linbo gestartet wird. Da kannst du dann ein
Timeout setzen, innerhalb von dem Nutzer Zeit haben, zu Linbo zu wechseln.
Die entsprechende Grup Konfiguration liegt in
|/srv/linbo/boot/grub/.cfg|
Dort kannst du oben bei set default=1 eintragen und bei set timeout=5
(oder so) dann solltest du ungefähr das bekommen, was du möchtest
:slight_smile:

genau so mache ich das seit Jahren.
Es muss aber auf die Zeile ### managed by linuxmuster
hingewiesen werden.
Diese muß verändert werden, damit ein import die Datei nicht überschreibt .
Ich mache aus managed by linuxmuster ein NOT managed by linuxmuster.

LG

Holger

Hallo Holger,
das mache ich auch so. Mein aktuelles Vorgehen:

  • In der *.cfg-Datei steht Timeout auf 60 und Default-Wert ist LINBO
  • Alle zu installierenden Rechner in LINBO booten und zuerst Home-Partition synchen, dann Root syncen (das werde ich künftig zusammen fassen)
  • Dann *.cfg Datei ändern: Timeout auf 0 und Default-Wert ist UBUNTU
  • Alle Laptops noch einmal mit angehängtem USB-Ehternet-Dongle neu starten, damit die aktuelle *.cfg Datei geholt wird…

Nun kommt das Problem:
Soll ein Schüler seinen PC zurück setzen können, müsste er zuerst die *.cfg Datei ändern, damit er überhaupt in LINBO kommt. Auch mich stört das, wenn ich mal schnell einen PC neu einrichten muss…

Daher möchte ich, dass in der cfg-Datei IMMER Linbo als Default steht. Sobald aber das Betriebssystem gestartet wird soll LINBO dann aber verschwinden. Probiere das nun mal über ein Script im Autostart aus.
Erst wenn beim Booten Netzwerkboot gewählt wird, wird LINBO wieder installiert und dann auch gebootet…

Weiß du was ich meine?
Liebe Grüße,
Leo

Nimm doch einfach ein Timeout von drei Sekunden, dann kann man in dem Fall schnell umschalten.

VG, Dorian

Das möchte ich nicht. Hatte schon den Fall, dass die Schüler dann aus versehen in LINBO booten und dann auf einmal alles weg ist :wink:

Hallo Leo,

Hatte schon den Fall, dass die Schüler dann aus versehen in LINBO booten und dann auf einmal alles weg ist.

Da haben sie dann gleich was gelernt! :wink:

In der Tat würde ich abwägen, ob ich mir als Administrator so viel
zusätzliche Arbeit machen möchte, nur um Fehler abzupuffern, die daraus
resultieren, das jemand eine einfache Anleitung nicht liest.

Umsetzten kannst Du das aber vermutlich so:

  • Die Clients stehen auf Netzwerkboot

  • Auf dem Server liegt eine Grub-Konfiguration (und eine start.conf),
    die Linbo startet (und automatisch das Betriebssystem restauriert).

  • Per Postsync-Skript patchst Du die Grub-Konfiguration im Cache des
    Clients so, dass das gewünschte OS direkt startet.

Dann sollte bei einem Start ohne Netz das OS direkt starten und bei
einem Start vom Netz Linbo (und automatisch der Rechner restauriert
werden - ganz ohne Tastendruck).

Beste Grüße.

Jörg

Hallo Jörg,
coole Idee!!! Gelöst habe ich es gerade wie folgt:

  • Client stehen auf Boot von Festplatte
  • Im Image ruft ein Cronjob (/etc/cron.d/install-grub) ein Skript auf, dass ein update-grub und ein grub-install /dev/nvme0n1 aufruft und zum Schluss die Cronjob-Datei löscht. Der Rechner startet also immer schnell (ohne auf einen DHCP zu warten) von der Festplatte mit dem originalen Ubuntu-GRUB2-Bootloader
  • Der Schüler muss an der „Reparaturstation“ das Convertible anstecken, starten, dann F12 drücken und Netzwerkboot auswählen. Dann wird wieder LINBO installiert.

Werde aber nun einstellen, dass LINBO direkt synct - so wie du vorgeschlagen hast :wink:
Muss nur noch hin bekommen, dass die Images von zwei Partitionen vom Server geholt und gesynct werden… Aber dazu mehr in einem anderen Thread…
DANK DIR!!!

LG, Leo

1 Like