Community-Lösung

ZimaOS btop zeigt „Illegal Instruction“ auf ZimaBoard: Der CPU-Build-Fehler in 1.3.3 und die Behebung in 1.4.0

A 2024 CasaOS tutorial thread that later became a detailed ZimaOS 1.3.3 btop bug report. ZimaBoard and ZimaBlade users with Intel N3450 CPUs saw Press Enter to reconnect and Illegal instruction errors. After browser testing ruled out the frontend, Zima-Giorgio said the binary had been compiled without accounting for the ZimaBoard CPU and that ZimaOS 1.4.0 fixed it.

Dieser Thread änderte im Laufe der Zeit sein Thema. Er begann als Installationsanleitung für CasaOS BTOP aus dem Jahr 2024 und wurde im März 2025 deutlich wertvoller, als ZimaOS 1.3.3 ein integriertes btop-Leistungspanel hinzufügte und mehrere ZimaBoard-/ZimaBlade-Benutzer feststellten, dass die neue Binärdatei mit Unzulässige Anweisung (Core-Dump erstellt).

Die endgültige Diagnose stammte von IceWhale, nicht aus Spekulationen der Community: Zima-Giorgio erklärte, dass das Team die ZimaBoard-CPU beim Kompilieren von btop nicht berücksichtigt hatte und das Problem in ZimaOS 1.4.0 behoben werden sollte. Damit handelt es sich um einen historischen CPU-Kompatibilitätsfehler mit einer klaren Versionsgrenze.

ZimaOS 1.3.3 führte das integrierte btop-Panel ein

In den Versionshinweisen zu IceWhales Version 1.3.3 wurde btop als neues Panel zur Leistungsüberwachung im ZimaOS-Dashboard eingeführt. Ziel war es, CPU-, Speicher-, Prozess- und Systemaktivitäten anzuzeigen, ohne dass Benutzer einen separaten Überwachungs-Stack installieren mussten.

Verwenden Sie die Funktionsgrenze von ZimaOS 1.3.3, wenn Sie den ursprünglichen Thread lesen.

Die Dashboard-Verknüpfung öffnete einen Bildschirm zum erneuten Verbinden

ZimaOS-Dashboard mit System- und Speicher-Widgets; Verknüpfungen zur Ressourcen- und Netzwerküberwachung hervorgehoben
Das neue Dashboard bot direkte Verknüpfungen zu den Tools für Ressourcen- und Netzwerküberwachung.

Auf den betroffenen Systemen öffnete ein Klick auf die Verknüpfung einen temporären Port mit hoher Portnummer und zeigte nur eine Aufforderung zum erneuten Verbinden an.

btop-Browserfenster auf ZimaOS mit der Anzeige „Zum erneuten Verbinden die Eingabetaste drücken“ anstelle der Leistungsoberfläche
Das Browser-Symptom sah nach einem ttyd-/WebSocket-Problem aus, doch der Terminalfehler offenbarte ein tiefer liegendes Kompatibilitätsproblem der Binärdatei.

Die direkte Ausführung von btop führte zu einer unzulässigen Anweisung

Die entscheidende Diagnosezeile lautete:

btop
Unzulässige Anweisung (Core-Dump erstellt)

Diese Meldung bedeutet, dass die CPU versucht hat, eine Anweisung auszuführen, für deren Verwendung die Binärdatei kompiliert wurde, die von der Hardware jedoch nicht unterstützt wurde. Das unterscheidet sich deutlich von einem Browser-Cache- oder WebSocket-Timeout.

Mehrere Browser schlossen einen browserspezifischen Fehler aus

Die Nutzer testeten Firefox, Chrome/Chromium, Safari, Brave, Opera und Edge sowie normale und private/Inkognito-Fenster. Das Verhalten blieb unverändert.

Diese Negativtests waren hilfreich, da die erste Frage von IceWhale bei der Fehlersuche lautete, ob das Problem browserspezifisch sein könnte.

DevTools zeigte einen WebSocket-Fehler, nachdem das Backend beendet worden war

Chrome DevTools zeigte fehlerhafte Close-Frames des btop-ttyd-WebSockets, abgelehnte Verbindungen und Fehler beim Abrufen des Tokens
Das Frontend verlor seine WebSocket-Verbindung, weil das btop/ttyd-Backend nicht stabil lief. Daher waren die Browserfehler nachgelagerte Hinweise und nicht die eigentliche Ursache.

Betroffene Nutzer verwendeten CPUs der Intel-Celeron-N3450-Generation

Ein Nutzer eines ZimaBoard 832 und ein Nutzer eines ZimaBlade verglichen ihre Hardware und stellten fest, dass beide CPUs der Intel-Celeron-N3450-Klasse verwendeten. Sie fragten, ob die btop-Binärdatei für einen neueren CPU-Befehlssatz des ZimaCube kompiliert worden sei.

Diese Vermutung wurde später von IceWhale bestätigt.

IceWhale bestätigte, dass das Kompilierungsziel falsch war

Am 27. März schrieb Zima-Giorgio, dass das Problem gefunden worden sei und in ZimaOS 1.4.0 behoben werden würde, da der ursprüngliche btop-Build die CPU des ZimaBoard nicht berücksichtigt hatte.

Dies ist die wichtigste Schlussfolgerung aus den Quellen und sollte spekulative Lösungsversuche wie die Neuinstallation von Browsern oder die manuelle Installation einer anderen btop-Binärdatei auf dem unveränderlichen ZimaOS-Host ersetzen.

Der wechselnde hohe Port war beabsichtigt

CorrectRoadH von IceWhale erklärte, dass btop jedes Mal an einem anderen hohen Port geöffnet wurde, und dass dies eine Sicherheitsfunktion sei, die verhindern sollte, dass die temporäre Überwachungssitzung direkt wiederverwendet wird.

Der wechselnde Port war daher für sich genommen kein Beleg für den Fehler.

Aktuelles btop nicht allein anhand des Fehlers in 1.3.3 diagnostizieren

Das aktuelle ZimaOS ist weit über 1.3.3/1.4.0 hinaus. Wenn btop heute fehlschlägt, sollten die aktuelle ZimaOS-Version, das CPU-Modell, die genaue Terminal-Fehlermeldung und die Information erfasst werden, ob nur die Dashboard-Verknüpfung oder auch die CLI betroffen ist.

Ein Ungültige Anweisung Bei einem modernen Build könnte dies weiterhin auf eine CPU-Inkompatibilität hindeuten, sollte jedoch als neue Regression untersucht werden, anstatt davon auszugehen, dass es sich um das alte Paket von 2025 handelt.

Warum der WebSocket-Fehler nach dem CPU-Fehler auftrat

Das Dashboard startet für btop eine interaktive Sitzung im Stil eines Terminals. Wenn der btop-Prozess sofort aufgrund einer ungültigen CPU-Anweisung beendet wird, verliert das Frontend das Backend, mit dem es kommunizieren soll. Meldungen über das Schließen der WebSocket-Verbindung und eine verweigerte Verbindung können daher sekundäre Auswirkungen des abgestürzten Prozesses sein.

Dies ist eine nützliche allgemeine Lektion zur Fehlersuche: Der erste Fehler in der Browserkonsole ist nicht immer die eigentliche Ursache. Vergleichen Sie ihn mit dem Verhalten, wenn der zugrunde liegende Befehl direkt ausgeführt wird.

Der ebenfalls ausfallende Netzwerkmanager-Shortcut lieferte einen weiteren Hinweis

Ein betroffener Nutzer sagte, dass sowohl die Verknüpfungen für den Ressourcenmanager als auch für den Netzwerkmanager dasselbe Verhalten mit erneuter Verbindungsherstellung zeigten, während das gewöhnliche Webterminal selbst funktionierte. Das deutete darauf hin, dass der Fehler an der von der Verknüpfung gestarteten Tool-Umgebung lag und nicht an einem vollständigen Ausfall von ttyd.

IceWhale benötigte weiterhin die direkte btop Absturz und die Informationen zur gemeinsamen N3450-Hardware, um das eigentliche Problem mit dem Kompilierungsziel zu identifizieren.

Die erneute Installation desselben 1.3.3-Builds würde die CPU-Anweisungen nicht ändern

Nachdem IceWhale bestätigt hatte, dass die Binärdatei selbst kompiliert worden war, ohne die CPU des ZimaBoard zu berücksichtigen, konnten Neuinstallationen von Browsern, das Löschen des Caches und die erneute Installation derselben Systemversion den Befehlssatz der ausführbaren Datei nicht korrigieren.

Die dauerhafte Lösung erforderte eine neu kompilierte Binärdatei, die mit der nächsten ZimaOS-Version ausgeliefert wurde.

Hardwarekompatibilität umfasst auch Binärdateien im User-Space, nicht nur Kernel-Treiber

Bei Kompatibilitätsdiskussionen geht es häufig um NIC-, GPU- oder Speichertreiber. Dieser Vorfall zeigt, dass auch ein generisches x86-Betriebssystem auf älteren CPUs ausfallen kann, wenn eine gebündelte Anwendung mit Anweisungen kompiliert wurde, die die Hardware nicht unterstützt.

Für x86-Rechner von Drittanbietern wird ein Ungültige Anweisung Die Nachricht ist daher ein wertvoller Beleg und sollte wörtlich in einen Supportbericht aufgenommen werden.

btop-Kompatibilitäts-FAQ

Wurde das ursprüngliche Problem durch Firefox oder Chrome verursacht?

Nein. Nutzer konnten das Problem in vielen Browsern und im privaten Modus reproduzieren.

Was gab IceWhale als eigentliche Ursache an?

Die btop-Binärdatei wurde kompiliert, ohne den Befehlssatz der ZimaBoard-CPU zu berücksichtigen.

Welche Version sollte das Problem beheben?

Zima-Giorgio sagte, dass das korrigierte btop in ZimaOS 1.4.0 verfügbar sein würde.