Wie oft Himbeere neu starten und ist es überhaupt nötig

19

Wenn Sie an einem Ort eine Himbeere haben und ein Python-Skript "für immer" ausführen müssen (ein Jahr, vielleicht zwei, ohne dass ich vor Ort bin), wie oft sollte ich es neu starten? Ich weiß, dass die Leute sie für ein Jahr am Leben halten, aber ich habe ein einfaches Skript geschrieben, das es zu gegebener Zeit neu starten kann. Himbeere führt das Python-Skript automatisch beim Booten aus.

Rok Dolinar
quelle
1
Warum einen Neustart durchführen, wenn dies nicht erforderlich ist? Es kann vorkommen, dass ein Neustart erforderlich ist, beispielsweise um das System zu aktualisieren. aber wenn dies nicht automatisiert ist, würde ich nicht neu starten. Ein Neustart birgt nicht das Risiko, dass das System nicht erfolgreich neu gestartet wird.
Steve Robillard
Das, das ich rund um die Uhr laufe, hat momentan eine Betriebszeit von 67 Tagen, was wahrscheinlich nicht ungewöhnlich ist. Ich starte es nur zu einem bestimmten Zweck neu. Wie Steve sagt, warum ohne Zweck?
Goldlöckchen
4
Im Kontext des IT-Supports meinen Sie vermutlich, "in 90%" der Probleme hilft ein Neustart. Sie würden einen Kunden nicht zufällig anrufen und ihn
auffordern, ihn
1
Rund-um-die-Uhr-Datenerfassung auf Arch, aktuelle Verfügbarkeit 260 d. Normalerweise führt ein Neustart zu Problemen;)
Ghanima
2
Überprüfen Sie einfach Ihre Protokolle und andere wachsende Dateien: logrotate erledigt dies. SD-Karten haben eine begrenzte Lebensdauer bei stark ausgelasteter Festplattenaktivität. Möglicherweise verschieben Sie / root, um ein externes rotierendes Laufwerk zu verwenden. Ich habe eine blinkende LED synchron mit cron und eine rote LED hinzugefügt, die leuchtet, wenn der Speicherplatz knapp ist, und eine andere LED, die in einigen Sicherheitsprotokollinformationen leuchtet.
fcm

Antworten:

25

Ich habe ein paar Pis, die meinen Amateurfunk-Repeater und mein Bewässerungssystem betreiben - realistisch gesehen, starte ich sie alle 6 Monate neu, um Sicherheitsupdates oder andere "Wartungsgründe" zu erhalten. Ich habe jedoch keine Probleme gesehen, bei denen ein Neustart erforderlich war, um den Betrieb aufrechtzuerhalten.

N7QNM
quelle
25

In Bezug auf die Hardware ist der einzige Grund, warum Sie jemals ein ARMHF-y-Board neu starten sollten, Firmware-Änderungen, notwendige Änderungen am ROM oder möglicherweise neue Geräte, die beim Booten vorhanden sein müssen.

Wenn Sie beispielsweise einen Treiber oder ein metallnahes Kernelmodul und ein Gerät hinzufügen, das diesen Treiber implementiert, ist wahrscheinlich ein Neustart erforderlich, um der CPU und dem Kernelspeicher-Mapper die Änderung mitzuteilen. Sie können den Linux-Kernel ohne Neustart aktualisieren .

In Bezug auf die Software sind alle für den Pi verfügbaren Hauptcomputerumgebungen * nix-ähnlich 1 , da sie True Unix ™ sind oder Linux oder ein Linux-Derivat verwenden und daher (U) nix-y sind.

Unix und seine Derivate sind vom Bootloader bis zum Userland so konzipiert, dass sie vollständig skalierbar, portabel und zuverlässig sind. Sie wurden für Server entwickelt, die nie oder fast nie einem Hard-Reset unterzogen werden (dh vollständig heruntergefahren und von Grund auf neu gestartet werden), und in geringerem Maße für eingebettete Geräte, genau wie Raspberry Pis. Folglich gelten diese Ziele tatsächlich für den Pi.

Dies bedeutet in der Praxis, dass Sie Ihren Pi (oder Ihren * nix-Desktop-PC) im Grunde genommen nie neu starten müssen.


1 Ignorieren Sie für einen Moment die Microsoft Windows 10: Internet Of Things Edition für den Pi, die ich gerne als Scherz bezeichnen würde, aber nicht.

Katze
quelle
2
Vielen Dank für Ihre 2c, es hat sehr geholfen, ich bin jetzt sicher, ich werde nie meine PI neu starten.
Rok Dolinar
Aktualisierungen von Kernel- / Gerätemodulen sind die einzigen wahrscheinlichen Gründe für einen Neustart, wenn sich die Hardware nicht ändert. Wenn ich die Dinge richtig verstehe, können Module auch ohne Neustart geändert werden.
SlySven
@SlySven Sie können Module auch ohne Neustart wechseln. Verlassen Sie sich jedoch nicht darauf, dass sie voll funktionsfähig und zerstörungsfrei sind
cat
1
NTs einmal im Monat neu starten? Wie kommst du darauf ?!
Max Ried
1
@ pjc50 Wow, wusste nicht, dass es aktuellere Releases dafür gibt. Obwohl ich mich geirrt habe, weiß ich, dass Win10 IoT derselbe Kern ist wie Win10 und nicht CE :)
Matthew Steeples
3

Bei eingebetteten "Run forever" -Systemen sind keine regelmäßigen Neustarts erforderlich. Es ist üblich, einen Hardware-Watchdog-Timer zu verwenden, um einen Systemstillstand zu erkennen und einen Neustart durchzuführen. Ich glaube, der Watchdog-Timer ist wertvoller als ein regelmäßiger Neustart (der Neustart funktioniert wahrscheinlich nicht, wenn das System hängt).

Chad Farmer
quelle
0

Ich stimme den vorher geschriebenen Dingen zu. In einer theoretischen Situation mit exzellent geschriebener Software mit perfekter Fehlerbehandlung, ohne Speicherverluste ... ist kein Neustart erforderlich.

Ich habe mehr als 50 PIs (alle PI 3) vor Ort, und einige werden wöchentlich neu gestartet, andere nie ... Fast alle PIs werden im Kioskmodus verwendet, entweder zum Abspielen von Videos, Anzeigen einer Website, Ausführen von Skripten, ... Benutzererfahrung ist mir wichtig und ich kann es mir nicht leisten, dass ein PI ausfällt. Auf allen ist ein Watchdog installiert.

Auf meiner Website benutze ich den folgenden Ansatz (dies basiert nur auf meiner eigenen Erfahrung, ohne wissenschaftlichen Hintergrund :-))

  • PIs, die Server (Apache, SIP, ...) ausführen und nur mit einem Ethernetkabel verbunden sind: Ich starte sie nie neu, einige von ihnen haben eine Betriebszeit von fast 2 Jahren (tatsächlich habe ich diese nicht aktualisiert)!

  • im Gegenteil, PIs, die Videoloops ausführen (mit OMXPlayer): Ich starte diese Geräte wöchentlich neu. Ich habe versucht, sie überhaupt nicht neu zu starten, aber ich habe festgestellt, dass das Video gelegentlich hängen bleibt, ohne dass der Watchdog es bemerkt. Man würde also ein Standbild auf dem Bildschirm sehen. Ich würde sagen, dass in einem Zeitraum von einem Monat für jedes der Geräte eine Wahrscheinlichkeit von ungefähr 50% bestand, dass das Video einmal einfriert. Um diese Risiken zu minimieren, habe ich beschlossen, einmal pro Woche einen Neustart durchzuführen, und die Ergebnisse sind akzeptabel Bisher hatte ich nach einem Jahr wöchentlicher Neustarts nur 2 Einfrierungen (Bild einfrieren, kein PI-Einfrieren). Natürlich würde ich diese auch gerne beseitigen, aber dies ist ein anderes Thema. Für diejenigen, ist es mir egal, wie sich ein Neustart auf die SD-Karte auswirkt, da es in diesem Fall einfach darum geht, eine neue SD-Karte einzulegen und die Vorlage mit dem richtigen Video zu aktualisieren.

  • PIs, die sich im Client-Modus befinden und webbasierte Benutzerinhalte (mit Chromium, KWeb, ...) mit Benutzerinteraktion anzeigen (hauptsächlich Touchscreens und / oder Schaltflächen): Ich starte diese jeden Monat neu und hatte bisher keine Probleme. Vielleicht war es nicht nötig, sie neu zu starten ... aber da diese Geräte Skripte (Java, Node.js) ausführen und Eingaben von anderen Geräten erhalten, dachte ich, dass irgendwann ein Neustart erforderlich sein könnte, und entschied mich für einen monatlichen Neustart neustarten.

Mir ist klar, dass dies keine direkte Antwort auf Ihre Frage ist, aber ich wollte nur einige persönliche Erfahrungen teilen, damit Sie - zusammen mit den anderen Antworten - beurteilen können, welcher Ansatz für Ihr Projekt am besten geeignet ist.

pieterdp
quelle