Back up synoboot after each DSM update so you can recover from a corrupt USBDOM or EEPROM

DaveR

Benutzer
Sehr erfahren
Mitglied seit
30. Mrz 2022
Beiträge
375
Punkte für Reaktionen
715
Punkte
144
To avoid being in the situation where I need a synoboot image from a donor I decided I needed to schedule backups of synoboot, and then set hyper backup to copy the backup synoboot images to another Synology.

So I wrote https://github.com/007revad/Synoboot_backup

1735710956007.png

1735710973937.png

1735710987284.png
 

Tommes

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
26. Okt 2009
Beiträge
9.799
Punkte für Reaktionen
1.755
Punkte
314
Nice 👍
 
  • Like
Reaktionen: DaveR

ctrlaltdelete

Benutzer
Contributor
Sehr erfahren
Maintainer
Mitglied seit
30. Dez 2012
Beiträge
14.195
Punkte für Reaktionen
6.187
Punkte
569
Very nice, thanx!!!
 

Anhänge

  • 1735726282568.png
    1735726282568.png
    89,6 KB · Aufrufe: 14
  • Like
Reaktionen: DaveR

maxblank

Benutzer
Contributor
Sehr erfahren
Mitglied seit
25. Nov 2022
Beiträge
4.583
Punkte für Reaktionen
2.492
Punkte
289
Nice part! It's going straight on the list of things I want to test with Synology NAS in the new year.
 

Adama

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
05. Mrz 2013
Beiträge
2.217
Punkte für Reaktionen
789
Punkte
154
Already done! ;)

Works like a charm...
 

Benie

Benutzer
Contributor
Sehr erfahren
Mitglied seit
19. Feb 2014
Beiträge
9.118
Punkte für Reaktionen
3.943
Punkte
364
What a Surprise at New Year! Good Idea Men 👍
 

Adama

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
05. Mrz 2013
Beiträge
2.217
Punkte für Reaktionen
789
Punkte
154
Hi @DaveR ,

it seems this don't runs correct on DSM 6.2.4, tried it on my old DS413:

Code:
Synoboot_backup v1.0.0
DS413-j DSM 6.2.4-25556-U8

Backup path: /volume1/Backup/Stage1/NAS2/synoboot

Backing up DS413-j__synoboot_6.2.4-25556-U8.img
dd: failed to open ‘/dev/synoboot’: No such file or directory

Backing up DS413-j__synoboot1_6.2.4-25556-U8.img
dd: failed to open ‘/dev/synoboot1’: No such file or directory

Backing up DS413-j__synoboot2_6.2.4-25556-U8.img
dd: failed to open ‘/dev/synoboot2’: No such file or directory

Finished

As you see, there's no /dev/synoboot. And also my old DS413 is stated as a DS413j...
 
  • Like
Reaktionen: dil88

DKeppi

Benutzer
Mitglied seit
01. Apr 2011
Beiträge
3.224
Punkte für Reaktionen
90
Punkte
114
Same on DS116, but with 7.2.2 - I think it depends on the model or architecture
There is no /dev/synoboot

Code:
Synoboot_backup v1.0.0
DS116-j DSM 7.2.2-72806-U2

Backup path: /volume1/homes/user/

Backing up [0;36mDS116-j__synoboot_7.2.2-72806-U2.img[0m
dd: failed to open '/dev/synoboot': No such file or directory

Backing up [0;36mDS116-j__synoboot1_7.2.2-72806-U2.img[0m
dd: failed to open '/dev/synoboot1': No such file or directory

Backing up [0;36mDS116-j__synoboot2_7.2.2-72806-U2.img[0m
dd: failed to open '/dev/synoboot2': No such file or directory

Finished

On my DS920+ it works like a charm...
 
  • Like
Reaktionen: Adama und dil88

Tommes

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
26. Okt 2009
Beiträge
9.799
Punkte für Reaktionen
1.755
Punkte
314
I haven't got around to testing your script yet, but yes... there is no /dev/synoboot directory on my DS124 and DS224+ (DSM 7.2.2-72806 Update 2) either.
 
  • Like
Reaktionen: dil88

dil88

Benutzer
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.871
Punkte für Reaktionen
2.318
Punkte
829
Spannend. Ich habe das Skript gestern installiert, heute überprüft, dass es funktioniert, und jetzt nach @Tommes' Beitrag geschaut, ob auf meiner DS423+ /dev/synoboot existiert, was der Fall ist.

Edit: Auf meiner DS214+ mit DSM 7.1.1 gibt es /dev/synoboot hingegen nicht.
Edit 2: /dev/synoboot wurde auf der DS423+ heute morgen erstellt - genau zu der Bootzeit. Insofern gehe ich davon aus, dass es von @DaveR's Script erstellt wird.
 
Zuletzt bearbeitet:

Stationary

Benutzer
Sehr erfahren
Mitglied seit
13. Feb 2017
Beiträge
4.003
Punkte für Reaktionen
1.305
Punkte
214
Gerade mal nachgeschaut: sowohl auf der DS216+II als auch auf DS720+ mit DSM 6.2.4 U8 gibt es /dev/synoboot, sowie ...1 und ...2.
Screenshot 2025-01-02 at 17.47.14.png
 
  • Like
Reaktionen: dil88

Adama

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
05. Mrz 2013
Beiträge
2.217
Punkte für Reaktionen
789
Punkte
154
Insofern gehe ich davon aus, dass es von @DaveR's Script erstellt wird.
Hmmm, bei mir haben die ein Datum vom 15.12., das war der Tag, an dem ich die Syno neu aufgesetzt habe, also kann Daves Skript nicht dafür verantwortlich sein...
 
  • Like
Reaktionen: DaveR

Stationary

Benutzer
Sehr erfahren
Mitglied seit
13. Feb 2017
Beiträge
4.003
Punkte für Reaktionen
1.305
Punkte
214
Hier auch Startzeit der DS216+II (die läuft nicht immer):
Screenshot 2025-01-02 at 17.51.38.png
 

dil88

Benutzer
Sehr erfahren
Mitglied seit
03. Sep 2012
Beiträge
30.871
Punkte für Reaktionen
2.318
Punkte
829
Ok, auch /dev/synobios ist zur Bootzeit erstellt worden, das hängt also offenbar einfach am Bootprozess. @DaveR wird sicherlich bald Licht ins Dunkel bringen.
 

Adama

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
05. Mrz 2013
Beiträge
2.217
Punkte für Reaktionen
789
Punkte
154
Dann wird DSM die ändern, "dd" liest ja im Skript ja nur aus.

Ich hab das Skript direkt getestet, ohne Neustart, deswegen hat sich das Datum auch nicht geändert...
 
  • Like
Reaktionen: Stationary und dil88

Tommes

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
26. Okt 2009
Beiträge
9.799
Punkte für Reaktionen
1.755
Punkte
314
Blödsinn Leute... denn natürlich gibt es das Verzeichnis .. ich sehe es halt nur nicht ... und das Script läuft auf meiner DS224+ auch durch...

Bash:
root@Fileserver:~# . ./synoboot-backup.sh
Synoboot_backup v1.0.0
DS224+ DSM 7.2.2-72806-U2

Backup path: /volume1/NetBackup/Synoboot

Backing up DS224+_23B0WBRPDQ8V0_synoboot_7.2.2-72806-U2.img
245760+0 records in
245760+0 records out
125829120 bytes (126 MB, 120 MiB) copied, 5.08891 s, 24.7 MB/s

Backing up DS224+_23B0WBRPDQ8V0_synoboot1_7.2.2-72806-U2.img
65536+0 records in
65536+0 records out
33554432 bytes (34 MB, 32 MiB) copied, 1.3554 s, 24.8 MB/s

Backing up DS224+_23B0WBRPDQ8V0_synoboot2_7.2.2-72806-U2.img
172032+0 records in
172032+0 records out
88080384 bytes (88 MB, 84 MiB) copied, 3.56386 s, 24.7 MB/s

Finished

@Stationary wie liest du das Verzeichnis aus das dir synoboot angezeigt wird?

Meine Güte bin ich dumm... ich wurde nach dem Abarbeiten des Scripts ausgeloggt und landete wieder auf der Konsole von Linux Mint... und da gibt es kein synoboot... logisch irgendwie. Also manchmal 🙄
 
Zuletzt bearbeitet:

Stationary

Benutzer
Sehr erfahren
Mitglied seit
13. Feb 2017
Beiträge
4.003
Punkte für Reaktionen
1.305
Punkte
214
Mit ssh vom Mac-Terminal auf die DS, dann ins Verzeichnis /dev wechseln, dort mit ls die ganze Liste oder mit ls -l mit Datumsanzeige, also ganz normal eigentlich.
 

Tommes

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
26. Okt 2009
Beiträge
9.799
Punkte für Reaktionen
1.755
Punkte
314
Lies bitte mein fett geschriebenes Edit aus meinem vorherigen Beitrag 🤓
 

DaveR

Benutzer
Sehr erfahren
Mitglied seit
30. Mrz 2022
Beiträge
375
Punkte für Reaktionen
715
Punkte
144
it seems this don't runs correct on DSM 6.2.4, tried it on my old DS413:

Code:
Synoboot_backup v1.0.0
DS413-j DSM 6.2.4-25556-U8

Backing up DS413-j__synoboot_6.2.4-25556-U8.img
dd: failed to open ‘/dev/synoboot’: No such file or directory

As you see, there's no /dev/synoboot. And also my old DS413 is stated as a DS413j...
A real j model would show DS413j, and not DS413-j

For some strange reason "cat /proc/sys/kernel/syno_hw_version" appends "-j" to some models. I've seen it before on a DS1817+ running DSM 6 as DS1817+-j. I've also seen "pv10-j" on a DS213+ running DSM 6 as DS213pv10-j. In my syno_hdd_db script it removes the "-j" and replaces "pv10-j" with "+". I'll update synoboot_backup to use the correct model name.

What does this command return?
Code:
ls /dev | grep -E 'syno|boot'

It also didn't get your NAS' serial number. Because on my 3 Synology NAS sudo dmidecode -s system-serial-number always returns "123456789" the script uses synogetkeyvalue /etc/synoinfo.conf pushservice_dsserial. But I don't know what "pushservice" is? Maybe it's only added to syninfo.conf when you first install Active Insight? Apparently back in 2013 /dev/mtd contained the serial number but /dev/mtd doesn't exist on my NAS.

What does this command return?
Code:
sudo cat /dev/mtd

Does anyone know another way to get the Synology NAS' serial number?
 
  • Like
Reaktionen: dil88

Adama

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
05. Mrz 2013
Beiträge
2.217
Punkte für Reaktionen
789
Punkte
154
A real j model would show DS413j, and not DS413-j
Ahhh, I see..

ls /dev | grep -E 'syno|boot'
Code:
root@GalacticaNAS2:~# ls /dev | grep -E 'syno|boot'
synobios

sudo cat /dev/mtd
Code:
root@GalacticaNAS2:~# sudo cat /dev/mtd
cat: /dev/mtd: No such file or directory

Does anyone know another way to get the Synology NAS' serial number?
Try "cat /proc/sys/kernel/syno_serial".
Works on 7.2.2, too...
 
  • Like
Reaktionen: DaveR und dil88


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat