Warum muss nach rpm-ostree install auf Fedora CoreOS neu gestartet werden?
Wer mit Fedora CoreOS gearbeitet hat, wird bemerkt haben, dass jedes Mal beim Installieren eines Pakets ein Neustart erforderlich ist, damit die Dateien des Pakets verfügbar werden. Dies unterscheidet sich deutlich von anderen Linux-Distributionen, bei denen installierte Pakete sofort verwendet werden können, ohne jedes Mal neu starten zu müssen.
Was ist der technische Grund für den Neustart?
rpm-ostree ist ein recht spezielles Werkzeug: Es installiert nicht einfach ein Paket. Dies hat den Vorteil, dass das aktuell laufende System überhaupt nicht verändert wird, sondern ein separates OS-Tree – vorstellen wie ein Image, das alle Dateien des Systems enthält – nach dem Ausführen von rpm-ostree install erstellt wird.
Ein Neustart nach jeder Installation mag wie eine dumme Idee erscheinen, da er den gesamten Server herunterfährt, aber bedenken, dass dies viel Kopfzerbrechen ersparen kann, da es keine teilweise aktualisierten Dienste gibt und nichts manuell repariert oder neu gestartet werden muss, da alles beim Neustart neu gestartet wird. Das bedeutet, dass sich das System immer in einem konsistenten Zustand befindet, da jeder Dienst sauber heruntergefahren wird, bevor das System neu startet – und nach dem Neustart wird jeder Dienst sauber mit den Systemänderungen gestartet.
Können mehrere Pakete vor dem Neustart installiert werden?
Ja, mehrere rpm-ostree install-Befehle können vor dem Neustart ausgeführt werden. Beim Neustart werden alle Änderungen gleichzeitig angewendet.
Kann der Neustart nach rpm-ostree install verzögert werden?
Ja, es ist nicht erforderlich, sofort nach dem rpm-ostree-Befehl neu zu starten. Der Neustart kann beliebig lange verzögert werden. Beachten jedoch, dass beim Neustart der Maschine aus anderen Gründen als einem manuellen Neustart (z.B. Stromausfall oder Neustart des VM-Hosts) die Updates ebenfalls angewendet werden, aber möglicherweise niemand vorhanden ist, um zu prüfen, ob alle Dienste korrekt laufen. Daher wird empfohlen, so bald wie möglich neu zu starten.
Kann der Neustart nach der Installation von Paketen vermieden werden?
Ja, Fedora CoreOS bietet eine experimentelle Live-Update-Funktion mit rpm-ostree ex apply-live. Siehe unseren Beitrag Fedora-CoreOS-Änderungen ohne Neustart anwenden. Beachten, dass das Anwenden von Updates oder neuen Paketen auf einem System mit laufenden produktiven Diensten eine schlechte Idee sein kann, aber es ist nicht inherently unsicherer als das Installieren von Paketen auf einer typischen Linux-Distribution wie Debian, Fedora oder Ubuntu, wo jede Installation oder jedes Update eines Pakets sofort die Dateien auf dem Dateisystem beeinflusst.