Kategorien
Linux

Gigabyte Brix 1900 hängt beim Reboot mit Ubuntu 16.04

Ein frisch installierter Gigabyte Brix 1900 bleibt bei beinahe jedem Reboot an folgender Stelle hängen: Shutdown target reached

Auch nach einer Nacht warten passiert hier nichts mehr, die für dieses Problem vorgeschlagenen Lösungen aus dem Netz habe ich alle durch probiert – weder das Deaktivieren des Swap vor dem Shutdown noch das aktivieren der Debug Console für den Shutdown hatten was gebracht (Console war bereits tot nachdem das shutdown target erreicht wurde).

Also habe ich nach einer Möglichkeit gesucht am Ende des Shutdowns noch ein Script zu starten, systemd sollte das ja irgendwie hin bekommen…

Warum am Ende des Shutdowns noch ein Script starten?
Weil ich für Systeme die beim Shutdown hängen in einem meinerer früheren Blog Posts bereits eine Lösung gezeigt habe und diese könnte auch hier weiterhelfen!

Als erstes habe ich jetzt eine Datei (/usr/local/sbin/reboot_instantly.sh) erstellt mit folgendem Inhalt befüllt:

#!/bin/bash
echo 1 > /proc/sys/kernel/sysrq
sync && echo b > /proc/sysrq-trigger

Als nächstes habe ich für den systemd eine Service Datei erstellt (/etc/systemd/system/force_reboot.service):

[Unit]
Description=force reboot

[Service]
Type=oneshot
ExecStart=/bin/true
ExecStop=/usr/local/sbin/reboot_instantly.sh

[Install]
WantedBy=multi-user.target

Und mit „systemctl enable force_reboot.service“ aktiviert – leider klappt das so überhaupt nicht! Sondern beim Start wird das ganze ausgeführt und die Kistet resettet sich immer dann wenn sie gestartet ist…

Also zurück zum Start und weitergesucht – es gibt tatsächlich genau für diesen Zweck eine passende Lösung, systemd startet alle Scripte die im Verzeichnis /lib/systemd/system-shutdown/ liegen nachdem der shutdown abgeschlossen ist!

Also einfach das Script „reboot_instantly.sh“ dorthin kopiert und leicht modifiziert:

#!/bin/sh
if [ „$1“ = „reboot“ ]; then
echo 1 > /proc/sys/kernel/sysrq
sync && echo b > /proc/sysrq-trigger
fi

Und damit klappt es jetzt auch wieder mit dem Reboot. Beim Shutdown schaltet sich das System allerdings nicht von selbst ab, das muss manuell erledigt werden.

Eigentlich sollte man das auch mit diesem Script nachrüsten können, die folgenden Zeilen sollten das bewerkstelligen:

if [ „$1“ = „poweroff“ ]; then
echo 1 > /proc/sys/kernel/sysrq
sync && echo o > /proc/sysrq-trigger
fi

Klappt aber leider nicht mit dem Gigabyte Brix 1900…

Der kleine Kasten wäre echt ein nettes Gerät für gewisse Zwecke, seine kleinen Macken machen ihn aber aus meiner Sicht nur zu einer Notlösung!

Kategorien
Linux

Ubuntu 16.04 – A start job is running for Unattended Upgrades Shutdown

Ubuntu richtet eine Dienst für unattended upgrades ein, genau dieser Dienst macht gelegentlich beim Herunterfahren des Systems Probleme.

Meine Geduld hat bisher nicht ausgereicht um so lange zu warten bis irgend etwas passiert, gefühlt dauert es eine Ewigkeit – die zwei Worte „no limit) am Ende der Meldung deuten auch wirklich darauf hin.

Gut möglich dass das Problem generell nur dann auftritt wenn das System frisch gestartet worden ist und man gleich oder nach kurzer Zeit einen Neustart einleitet.

Da ich alle Sicherheitsupdates zeitnahe selbst installiere und diese verantwortungsvolle und gelegentlich auch fehlerbehaftete Aufgabe nicht einem Dienst überlassen möchte, stört mich der Dienst mehr als er Nutzen bringt. Während der Installation des Systems habe ich übrigens die automatische Installation von Updates abgelehnt – da sind sie trotzdem auch wenn sie nichts automatisch installieren.

Um die Fehlermeldung zu eliminieren kann man den Dienst einfach nicht mehr starten:

update-rc.d -f unattended-upgrades remove

Wer vor dem reboot den Dienst beendet

systemctl stop unattended-upgrades

spart sich die Warterei und bekommt nach kurzer Wartezeit sein System ohne den Dienst gestartet – ein erneuter reboot läuft dann ohne lange Wartezeit!

Speziell bei der Fernwartung von Systemen die hunderte Kilometer entfernt stehen ist das eine echte Hilfe! 🙂