21.12.2024 - Rocrail - Update und Backup via Skript - Teil 6 der Testumgebung
Im 6. Teil werden wir nun ein Skript einrichten, dass uns eine Sicherung von Rocrail anlegt und anschließend automatisch das neuste Update von Rocrail einspielt. Möchtet Ihr dies lieber manuell tun, geht Ihr wie bei der Installation vor und überschreibt die vorhandene Installation. Die Datei zur Erstellung der Desktop-Vernknüpfung desktoplin.sh braucht ihr NICHT nochmals auszuführen.
Hinweis
Macht vorher eine Sicherung Eures Rocrail-Ordners.
Sieht man sich das Skript das erste mal an, erscheint es einem relativ mächtig. Aber keine Sorge, das meiste sind einfach nur Erläuterungen, was im jeweiligen Schritt ausgeführt wird.
Hinweis
Hierbei handelt es sich natürlich um kein richtiges Backup, da es auf der lokalen Festplatte erstellt wird. Wenn Ihr vor Datenverlust geschützt sein möchtet, solltet Ihr die erstellten Sicherungen regelmäßig auf unterschiedliche externe Datenträger speichern.
Das Herunterladen und Einrichten des Skriptes erfolgt via Konsole. Diese öffnen wir entweder über das Menü „Anwendungen / Systemwerkzeuge / MATE-Terminal“ oder die Tastenkombination <strg> + <alt> + t .
Vorbereitung
Zuerst wechseln wir in unser Home-Verzeichnis und laden uns das Skript von meiner Seite herunter:
cd
wget -O rrupdate.sh https://roba-moba.de/rrupdate.sh.txt
Der Aufmerksame Leser wird vielleicht bemerken, dass sich dieser Befehl vom herunterladen von Rocrail unterscheidet. Die Option -O rrupdate.sh vergibt der heruntergeladenen Datei gleich den richtigen Namen und entfernt die Erweiterung .txt. Ich habe die Datei als TXT-Datei auf meinem Server abgelegt, damit Ihr Euch den Inhalt vor dem Download auch anschauen könnt.
Um das Skript nutzen zu können, müssen wir die benötigten Rechte anpassen und unserem Benutzer die Möglichkeit geben dieses auszuführen:
chmod u+x rrupdate.sh
Ausführen
Anschließend können wir das Skript ausführen
./rrupdate.sh
Wenn Ihr nicht jedes mal auf die Konsole wechseln wollt, funktioniert das Ganze auch über den Datei-Explorer
Hierzu macht Ihr einen Doppelklick auf die Datei rrupdate.sh (1) und wählt Im Terminal ausführen (2) aus.
Backup zurückspielen
Das Backup könnt Ihr wie folgt zurückspielen.
Öffnet eine Konsole und wechsel in das Backup-Verzeichnis.
cp -r ~/rr-backup/home/<Euer Benutzername>/rocrail ~
cd ~/rr-backup
Dort entpackt Ihr das Archiv mit:
tar -xf <Euer Backupfile>
z.B. tar -xf rr-backup-20241214-17_08_07.tar
Anschließend kopiert Ihr den rocrail-Ordner einfach über die bestehende Installation
Achtung
Rocrail muss beendet sein!
cp -r ~/rr-backup/home/<Euer Benutzername>/rocrail ~
z.B. cp -r ~/rr-backup/home/rsb/rocrail ~
Im Video zeige ich euch auch noch die Variante via Desktop.
Anpassbare Variablen
Das Skript enthält ein paar wenige anpassbare Variablen. Auf diese werde ich hier kurz eingehen.
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# ### Anpassbare Variablen # Anzahl vorgehaltener Backups ANZAHL="10" # Link zur Rocrail Datei RRLINK="https://wiki.rocrail.net/rocrail-snapshot/Debian/Rocrail-debian11-i64.zip" RRDATEI="Rocrail-debian11-i64.zip" #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#
Variable | Erklärung |
ANZAHL=„10“ | Hier wird festgelegt, wie viele Backups gespeichert bleiben, bevor das älteste gelöscht wird. Diesen Wert könnt Ihr beliebig wählen, solltet aber aufpassen, dass nicht irgendwann Eure Festplatte vollläuft. |
RRLINK | Hierbei handelt es sich um den Downloadlink von Rocrail (siehe auch 14.12.2024 - Rocrail-Installation via Konsole - Teil 5 der Testumgebung), z.B. (RRLINK=„https://wiki.rocrail.net/rocrail-snapshot/Debian/Rocrail-debian11-i64.zip“). Dieser wird sich ggf. einmal ändern und muss dann hier ersetzt werden. |
RRDATEI | Genauso wie beim Downloadlink, verhält es sich beim Dateinamen, dieser muss ggf. angepasst werden. |
Wie Ihr die Inhalte am besten ändert, zeige ich Euch im Video.
Das Skript
Das Skript zum Download findet Ihr unter https://roba-moba.de/rrupdate.sh.txt
Im Video werde ich mit Euch Schritt für Schritt das Skript durchgehen.
#!/bin/bash ################################################# # Skript von RoBa-MoBa www.roba-moba.de # # Version 2.0 vom 06.10.2024 # ################################################# ################################################# ###### Variablen definieren #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# ### Anpassbare Variablen # Anzahl vorgehaltener Backups ANZAHL="10" # Link zur Rocrail Datei RRLINK="https://wiki.rocrail.net/rocrail-snapshot/Debian/Rocrail-debian11-i64.zip" RRDATEI="Rocrail-debian11-i64.zip" #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# ### Feste Variablen # Farben festlegen CYAN='\033[1;36m' GELB='\033[1;33m' ROT='\033[1;31m' GRUEN='\033[1;32m' # Ohne Farbe - zuruecksetzen OF='\033[0m' # HOMEVERZEICHNIS # Verwendung von relativen Pfaden HOMEUSER="home/$USER" # Rocrail-Verzeichns RRDIR="/$HOMEUSER/rocrail" # Backupverzeichnis BKDIR="$HOMEUSER/rr-backup" #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# ################################################# ################################################# ##### Vorbereitung #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# ### Bildschirm leeren clear ### Wechsel ins Root-Verzeichnis cd / ### Einleitung echo -e "$CYAN Willkommen zum Rocrail-Backup-Skript $OF" echo -e "" echo -e "$CYAN Die Anleitung findest Du unter https://roba-moba.de $OF" echo -e "" echo -e "$GELB Aktuelle Einstellungen $OF" echo -e "$CYAN Anzahl vorgehaltener Backups $GELB $ANZAHL $OF" echo -e "$CYAN Verwendete Rocrail-Datei $GELB $RRDATEI $OF" echo -e "$CYAN Verwendeter Download Link $GELB $RRLINK $OF" echo echo echo -e "$ROT WARNUNG UND HINWEIS $OF" echo echo -e "$GRUEN Das Skript wurde mit äußerster Vorsicht entwickelt und basiert auf der Basis der Anleitungen auf roba-moba.de. $OF" echo echo -e "$GELB Die Verwendung erfolgt auf eigene Gefahr und wir übernehmen keine Haftung für Schäden. Vor der Nutzung, empfehlen wir ein Backup auf einem externen Datenträger. $OF" ### Abfrage ob Rocrail beendet wurde echo echo echo -e "$ROT !!! Achtung !!! ACHTUNG !!! ACHTUNG !!! $OF" echo echo -e "$GELB Rocrail muss vor dem Update beendet werden! $OF" echo -e "Wurde Rocrail beendet? j/n $OF" read RRANTWORT if [[ "$RRANTWORT" == [y,Y,j,J] ]]; then echo -e "$CYAN Rocrail geschlossen, fahre fort. $OF" else clear echo -e "$ROT Rocrail schließen! $OF" echo -e "$GELB Update wird abgebrochen. Bitte nach dem schließen von Rocrail das Update erneut starten. $OF" echo echo exit 1 fi #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# ################################################# ################################################# #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# ##### Backup ### Anlegen eines Backupordners echo echo -e "$GELB Prüfe ob Backupordner vorhanden $OF" if [ ! -d $BKDIR ]; then mkdir $HOMEUSER/rr-backup echo -e "$CYAN Backup-Ordner wurde erstellt $OF" else echo -e "$GRUEN Backup-Ordner bereits vorhanden $OF" fi ### Erstellen eines einfachen Backups echo echo -e "$GELB Erstelle Backup $OF" tar -cf $BKDIR/rr-backup-$(date +%Y%m%d-%H_%M_%S).tar $HOMEUSER/rocrail echo -e "$CYAN Backup wurde erfolgreich erstellt $OF" # Warnhinweis echo -e "$ROT ACHTUNG $OF Bitte sichere die Backups zusätzlich auf einem externen Datenträger" ### Löschen alter Backups # Unter $ANZAHL wird die Menge der vorzuhaltenden Backups definiert echo echo -e "$GELB Folgende alten Backups werden gelöscht $OF" # alte Backups anzeigen LOESCHEN=$(ls -td $BKDIR/* |tail -n +$ANZAHL) echo " $LOESCHEN" # alte Backups löschen ls -td $BKDIR/* |tail -n +$ANZAHL|xargs rm -rf echo -e "$CYAN Alte Backups gelöscht $OF" echo #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# ################################################# ################################################# #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# ##### Rocrail Update # Aktuelle Rocrail-Version ins Verzeichnis /tmp herunterladen cd /tmp echo -e "$GELB Aktuelle Rocrail-Version wird heruntergeladen $OF" echo -e "$GELB Bitte warten $OF" wget -q $RRLINK echo -e "$CYAN Download abgeschlossen $OF" echo # Entpacken der heruntergeladenen Rocrail-Version cd /tmp echo -e "$GELB Rocrail-Version wird entpackt $OF" unzip -q $RRDATEI -d rocrail echo -e "$CYAN Entpacken abgeschlossen $OF" echo # Kopieren der Dateien ins Benutzerverzeichnis echo -e "$GELB Update wird eingespielt $OF" cp -r /tmp/rocrail/bin/* $RRDIR/bin echo -e "$CYAN Update abgeschlossen $OF" echo #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# ################################################# ################################################# #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~# ##### Abschluss # Aufräumen echo -e "$GELB Beginne mit dem aufräumen und lösche temporäre Dateien $OF" cd /tmp rm -r /tmp/rocrail rm /tmp/Roc* echo -e "$CYAN Aufräumen abgeschlossen $OF" echo # Ende Update echo echo -e "$GRUEN Das Update wurde erfolgreich durchgeführt $OF" echo -e "$CYAN Rocrail kann nun wieder gestartet werden $OF" echo ################################################# #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#
Fazit
Geht einfach ruhig an die Sache ran, dann funktioniert das Ganze auch. Vergesst nicht, vorab eine Sicherung Eures Rocrail-Ordners anzulegen. Sollte ihr auf Probleme stoßen, könnt ihr diesen einfach wieder zurückspielen.
Die Grundinstallation von Eurem Linux MoBa-Rechner und Rocrail ist nun abgeschlossen. Nun können wir mit der Einrichtung von Rocrail beginnen.
Das Video
Im Video werde ich die Vorgehensweise nochmal Schritt für Schritt mit Euch durchgehen und Euch auch das Skript erläutern.
Euer Robert von RoBa-MoBa
Zum Beitrag auf YouTube: https://youtu.be/d2TNBloWCgw
~~~ Verwendetes Zubehör (Partnerlinks) ~~~
Dell Optiplex Desktoprechner - https://amzn.to/3XN9BNL
Crucial SSD - https://amzn.to/3N3lOZy
Dell Monitore - https://amzn.to/3XGDDmd
Haftungsausschluss
Wir haben die hier gezeigten Anleitung sorgfältig erstellt und in unserer Testumgebungen ausgiebig getestet.
Wer sich entschließt diese Anleitungen für sich selbst umzusetzen, führt diese auf eigene Verantwortung durch.
Der Ersteller des Artikels, sowie der Seitenbetreiber, haftet nicht für eventuelle Schäden an Hard- und/oder Software oder damit zusammenhängenden Schäden
Diskussion