Wie Raspberry richtig neu booten?

Moderatoren: seppy, udo1toni

Benutzeravatar
Steinspiel
Beiträge: 394
Registriert: 28. Dez 2019 08:49
Answers: 2

Wie Raspberry richtig neu booten?

Beitrag von Steinspiel »

Moin,

Zum wechseln der SD Card bin ich bisher so vorgegangen:

- Raspberry runtergefahren
- Netzstecker aus dem Gehäuse gezogen
- Karten getauscht
- Netzstecker wieder reingefummelt und das automatische booten abgewartet...

Ist das der richtige Weg? Nicht nur das es etwas fummelig ist, leidet mit der Zeit nicht auch die Steckverbindung darunter? Oder geht ihr alle so vor?

schönen Sonntag noch...
bis dann, Steinspiel

Benutzeravatar
peter-pan
Beiträge: 2564
Registriert: 28. Nov 2018 12:03
Answers: 25
Wohnort: Schwäbisch Gmünd

Re: Wie Raspberry richtig neu booten?

Beitrag von peter-pan »

..ich habe Netzteile mit Ausschalter, da brauche ich keinen Netzstecker zu ziehen. (hab ich mit den Gehäusen/Lüfter zusammen gekauft / ca. 17 €) und an einem Pi habe ich eine Schaltsteckdose, die ich von Hand (direkt in Greifweite) bzw. per Tasmota/MQTT über openHAB ein und ausschalten kann.

Ich hatte auch mal einen in einem anderen Zimmer stehen, der war auch an einer Sonoff S20 Dose. Wenn ich den heruntergefahren habe, wurde eine Rule aktiviert, die die Steckdose nach 3 Minuten ausgeschaltet hat.
.things:

Code: Alles auswählen

Thing network:pingdevice:raspi_office       [ hostname="192.168.178.xxx", retry=1, timeout=5000, refreshInterval=60000 ]
.items:

Code: Alles auswählen

Switch              RasPi_online                "RPi3b+ Office   [MAP(tech.map):%s]"            <network>     (gNet)    {channel="network:pingdevice:raspi_office:online"}

Code: Alles auswählen

rule "RaspberryPi switch off after shutdown"
  when
//    Item Dummy1 changed to ON  or //Testschalter
    Item RasPi_online changed from ON to OFF
  then
  if (Sonoff_socket_03.state == OFF) {
    logWarn("cpu-rules", "RasPI-Steckdose ist schon ausgeschaltet {}",Sonoff_socket_03.state)
     return;
  }
    logInfo("cpu-rules", "Raspberry Office ist Offline und wird in 3 Minuten ausgeschaltet {}",Sonoff_socket_03.state)
      createTimer(now.plusMinutes(3), [|
        Sonoff_socket_03.sendCommand (OFF)
        logInfo("cpu-rules", "Raspberry Office {} wurde ausgeschaltet ",Sonoff_socket_03)
      ])
end
Ich stoppe zuerst openhab2 und mache dann den shutdown. Ich weiss zwar nicht, ob das unbedingt sein muss. Ich hab es mir einfach so angewöhnt. Ich könnte mir aber vorstellen, dass durch das Runterfahren von OH, auch wirklich als was noch in "irgendeinem Cache" ist, auch auf die Karte geschrieben wird.
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.1.1 openhabian

Benutzeravatar
Steinspiel
Beiträge: 394
Registriert: 28. Dez 2019 08:49
Answers: 2

Re: Wie Raspberry richtig neu booten?

Beitrag von Steinspiel »

Moin,
peter-pan hat geschrieben: 2. Aug 2020 16:46 Wenn ich den heruntergefahren habe, wurde eine Rule aktiviert, die die Steckdose nach 3 Minuten ausgeschaltet hat.
Das gefällt mir! Ich habe hier noch eine Herrenlos TP Link Steckdose rum liegen...
Ich stoppe zuerst openhab2 und mache dann den shutdown
openHAB stoppen? Ich kenne bis jetzt nur "sudo shutdown -h 0" bzw "sudo shutdown -r 0" für den Raspberry und "sudo reboot" um openHAB neu zu starten...
Du meinst, openHAB sollte erst gestoppt werden um dann den Raspberry herunter zu fahen?
bis dann, Steinspiel

Benutzeravatar
peter-pan
Beiträge: 2564
Registriert: 28. Nov 2018 12:03
Answers: 25
Wohnort: Schwäbisch Gmünd

Re: Wie Raspberry richtig neu booten?

Beitrag von peter-pan »

... also, bevor ich "sudo shutdown" mache, fahre ich sozusagen zuerst openHAB herunter mit "sudo systemctl stop openhab2.

Die Steckdose sollte aber den letzten Zustand behalten, oder immer aus bleiben, falls mal ein Stromausfall vorkommt, sonst fährt der Pi vielleicht von alleine hoch ;)

Edit: Um openHAB neu zu starten gebe ich nur "sudo systemctl restart openhab2 ein. D.h. der Rechner selber wird nicht neu gestartet. Das sollte im Normalfall reichen.
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.1.1 openhabian

Benutzeravatar
udo1toni
Beiträge: 13858
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: Wie Raspberry richtig neu booten?

Beitrag von udo1toni »

Also, ein sudo reboot reicht, da es dazu führt, dass ein systemctl stop * ausgeführt wird (natürlich nicht wirklich mit einem Stern...)

Genauso reicht auch ein sudo poweroff um den Rechner herunterzufahren.

Allerdings, wenn man ZRAM nutzt, sollte man noch mal im englischen Forum schauen...


Gesendet von iPad mit Tapatalk
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Benutzeravatar
Steinspiel
Beiträge: 394
Registriert: 28. Dez 2019 08:49
Answers: 2

Re: Wie Raspberry richtig neu booten?

Beitrag von Steinspiel »

Moin,
peter-pan hat geschrieben: 2. Aug 2020 20:28 ... also, bevor ich "sudo shutdown" mache, fahre ich sozusagen zuerst openHAB herunter mit "sudo systemctl stop openhab2.
udo1toni hat geschrieben: 2. Aug 2020 20:39 Also, ein sudo reboot reicht, da es dazu führt, dass ein systemctl stop * ausgeführt wird
Ich habe etwas rumgelesen was die Start / Stoppmöglichkeiten von openHAB betrifft und bin jetzt leicht verwirrt, was sicher auch mit der Linux Terminologie zusammenhängen mag.

Bisher dachte ich so: das Betriebssystem auf meinem Raspberry ist "openhabian", ein angepasstes Linux auf oder in dem "openHAB" ausgeführt wird. Ich nutze ZRAM, welches auch von "openhabian" gemanagt wird ...
Will ich nun den Raspberry "sauber" ausschalten (also ein "herunterfahren" im Sinne von "Windows herunterfahren") so genügt ein

Code: Alles auswählen

sudo shutdown -h 0

und das Betriebssystem des Raspberry (openhabian) kümmert sich darum das alles (ZRAM + openHAB usw.) "richtig" beendet wird um auch später wieder "richtig" zu starten.
Sehe ich das falsch? Ich brauche doch nur diesen Befehl um den Raspberry ferunterzufahren um die SD Card zu wechseln, oder?
bis dann, Steinspiel

Benutzeravatar
peter-pan
Beiträge: 2564
Registriert: 28. Nov 2018 12:03
Answers: 25
Wohnort: Schwäbisch Gmünd

Re: Wie Raspberry richtig neu booten?

Beitrag von peter-pan »

...ja, ja diese Begrifflichkeiten.

Mein Verständnis geht auch in die Richtung, aber noch etwas diffiziler.

Das Betriebssystem, das auf dem openhabian-image (sd-Karte) ist eine raspian-lite-version (debian), welches mit einer Installationsroutine zur Installation sowohl von openHAB dem Smarthome-System incl. einer Grundkonfiguration ausgestattet ist und auch noch diverse Zusatztools, die zur Kontrolle/Überwachung und Steuerung von openHAB dienen, beinhaltet. Die Summe, also openHAB-Kern und die Tools incl. Installationsroutine, sind dann wohl openhabian. (ohne Gewähr).

Was das Herunterfahren des Systems anbelangt hat Udo das ja schon genau erklärt und auch darauf hingewiesen dass bei der Benutzung von ZRAM vorher noch, dieses angehalten werden muss, damit die RAM-Daten auf Platte/Karte geschrieben werden.

Den Shutdown mache ich ohne Parameter, da der RasPi ja kein PowerOff kennt und soweit ich weiss, dann automatisch den Halt macht. Und ich gebe ihm auch die Minute Zeit, deshalb auch keine 0 am Schluss, man weiss ja nie, vielleicht überlege ich mir's ja mal und cancel den shutdown noch :) ;)
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.1.1 openhabian

Benutzeravatar
udo1toni
Beiträge: 13858
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: Wie Raspberry richtig neu booten?

Beitrag von udo1toni »

Also, grundsätzlich ist openHABian eine Sammlung diverser Scripte, die das Einrichten und Warten einer openHAB Installation mitsamt diverser Software erleichtern soll.
Um es noch einfacher zu gestalten, gibt es ein fertiges Raspbian Image, welches schon ein komplett eingerichtetes openHABian samt autoconfig Script mitbringt. Dank dieses Scripts richtet openHABian beim ersten Start das System komplett ein.

Das Image ist schon etwas älter... sonst hieße es Raspberry Pi OS ;), aber das Prinzip bleibt das gleiche. openHABian ist lediglich schon installiert und vorkonfiguriert.
Man kann also mit dem aktuellen Raspberry Pi OS ebenfalls einfach an den Start gehen, man muss anschließend lediglich git installieren und openHABian aus dem Repository einrichten. Der rest läuft dann fast wie beim Image, nur, dass openhabian-config von Hand aufgerufen werden muss und die Installation dort angestoßen werden muss.

sudo poweroff ist ein Alias für sudo shutdown -h 0 (bzw. sudo shutdown -h now) und sollte ohne Probleme funktionieren. Wenn für ZRAM nichts weiter beachtet werden muss (ich nutze das nicht) und es mit sudo shutdown -h 0 funktioniert, wird auch sudo poweroff klappen. Das ist für mich einfacher zu merken ;)
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Benutzeravatar
Steinspiel
Beiträge: 394
Registriert: 28. Dez 2019 08:49
Answers: 2

Re: Wie Raspberry richtig neu booten?

Beitrag von Steinspiel »

Moin,

Also, ich habe jetzt erst mal eine TP Link Steckdose vor den Raspberry gesteckt. Fahre ich den runter (Neuerdings mit vorherigen openHAB Stop ;-) ) so kann ich erst mal per App die Dose AUS und EIN schalten, das spart schon mal das "Steckergeziehe".
Aber ich will es ja auch mit einer Rule wie in Deinem Beispiel machen. Dazu habe ich erst mal eine *.things Datei mit folgenden Inhalt angelegt

Code: Alles auswählen

Thing network:pingdevice:openhab       [ hostname="192.168.178.xxx", retry=1, timeout=5000, refreshInterval=60000 ]
"openhab" ist der in der Fritz!Box angezeigte Name, nebst der festen IP, den Rest hatte ich von Dir übernommen.
Mein ITEM dazu sieht so aus:

Code: Alles auswählen

Switch  RasPi_online	"Raspi   [MAP(tech.map):%s]"	<network>	{channel="network:pingdevice:openhab:online"}
Der allerdigns immer "NULL" anzeigt, auch wenn ich ihn in der Sitemap

Code: Alles auswählen

	Switch  item=RasPi_online	label="Raspberry"
von Hand schalte...!

Aber dann habe ich das hier erst genauer gelesen:
peter-pan hat geschrieben: 2. Aug 2020 16:46 Wenn ich den heruntergefahren habe, wurde eine Rule aktiviert, die die Steckdose nach 3 Minuten ausgeschaltet hat.
Dein Beispiel funktioniert doch nur mit nem zweiten Raspberry, oder?

Kannst Du mir trotzdem noch sagen was bei Thing und/oder Item falsch bei mir läuft?
bis dann, Steinspiel

Benutzeravatar
Steinspiel
Beiträge: 394
Registriert: 28. Dez 2019 08:49
Answers: 2

Re: Wie Raspberry richtig neu booten?

Beitrag von Steinspiel »

Moin,
peter-pan hat geschrieben: 3. Aug 2020 22:43 [...]
Den Shutdown mache ich ohne Parameter,
[...]
udo1toni hat geschrieben: 4. Aug 2020 00:53 [...]
Wenn für ZRAM nichts weiter beachtet werden muss (ich nutze das nicht) und es mit sudo shutdown -h 0 funktioniert, wird auch sudo poweroff klappen.
Na so ganz falsch lag ich dann ja nicht mit meinem fundiertem Halbwissen ;-) Danke für die Erklärungen.

Was ZRAM betrifft, hatte ich es aktiviert weil ich mit Persistence rumgespielt hatte und seit dem läuft es völlig unbemerkt vor sich hin. Auch mein runterfahren nur mit

Code: Alles auswählen

sudo shutdown -h 0
hat sich nie negativ bemerkbar gemacht: ich habe "mabdb" und eine "rrd4j" Persistence am laufen und nach nem Neustart ist bisher alles so wie es sein sollte.
Ich habe versucht mehr über ZRAM und sauberes herunterfahren raus zu finden, bin aber nicht auf eine explizite "so muss das gemacht werden!" Erklärung gestoßen, deshalb werde zur Sicherheit in Zukunft openHAB immer erst stoppen und dann herunter fahren, mich jagt ja keiner! ;-)
bis dann, Steinspiel

Antworten