Wie bekomme ich DSM 7 auf meiner Synology DS412+

RSfuchs

Gesperrt
Mitglied seit
25. Mai 2017
Beiträge
391
Punkte für Reaktionen
29
Punkte
28
Ohne "+" können wir nicht pimpen.
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.160
Punkte für Reaktionen
407
Punkte
393
Hallo,
Oder den Telefonjoker bei mir lösen. Kann ja eine bauen.
@RSfuchs
wenn das hier ein kommerzielles oder auch nur privat finazielles Angebot ist so bist Du sofort RAUS. Dein Beiträge ecken zunehmens an, reiss Dich zusammen.

Gruß Götz
 

RSfuchs

Gesperrt
Mitglied seit
25. Mai 2017
Beiträge
391
Punkte für Reaktionen
29
Punkte
28
Negativ, kein kommerzielles oder auch nur privat finanzielles Angebot.
 
  • Haha
Reaktionen: mayo007

Puppetmaster

Benutzer
Sehr erfahren
Mitglied seit
03. Feb 2012
Beiträge
18.991
Punkte für Reaktionen
628
Punkte
484
Ich hab mir den ganzen Thread jetzt mal per Google ins Chinesische übersetzen lassen. So langsam macht er jetzt auch Sinn.
 

Mavalok2

Benutzer
Mitglied seit
05. Jun 2018
Beiträge
697
Punkte für Reaktionen
145
Punkte
69
Da bin ich aber froh. Dachte schon in bin der einzig der hier nichts versteht. Aber ich sage mir ja immer, ich muss nicht immer alles verstehen. ;)
 

strange

Benutzer
Mitglied seit
04. Dez 2022
Beiträge
3
Punkte für Reaktionen
5
Punkte
53
Also das was @RSfuchs geschrieben hat, funktioniert auch soweit.
Ich hatte bereits meine DS412+ als DS713+ laufen mit DSM7.1, das geht sogar recht einfach.

Anstatt eines modifizierten USB-Sticks (VID/PID 0xF400) habe ich einen alten Raspberry Zero 1.3 (ohne WLAN) verwendet.
Den kann man ganz einfach in den Gadget Mode als mass_storage device schalten um einen 0xF400 USB-Stick zu emulieren.

Hier eine grobe Anleitung, wie ich es gemacht habe (bin selber Senior Linux Admin, bin also auf der Shell recht sicher unterwegs)
1. Backup vom aktuellen Flash erstellen (sollte man sowieso immer machen, falls mal das Flashmodul abraucht)
- SSH auf der Syno aktivieren, mit Putty oder anderem SSH-Client auf der DS einloggen.
sudo if=/dev/synoboot of=/volume1/PFAD_ZUM_BACKUP/synoboot.img

2. USB-Stick bzw. Raspberry Zero am PC anschließen und erstmal das original Image flashen.
Unter Windows z.B. mit Balena Etcher oder dem raspberry rpi-imager oder unter Linux ganz einfach mit dem Befehl:
cp synoboot.img /dev/sda (mit "fdisk -l" den USB-Stick herausfinden)

3. Das interne Flash-Modul ausstöpseln und eine leere Festplatte in den ersten Slot stecken.

4. Mit dem USB-Stick/Zero booten (Bootvorgang braucht bisschen länger)
Den Zero schon vor dem Booten mit Strom versorgen.
Bei meinem Zero hatte ich das Problem, dass das NAS beim Einschalten Strom von der USB-Buchse gezogen hat, womit die Spannung vom Zero deutlich unter 5V fiel und er Zero sich daraufhin rebootet hat, womit aber dann das NAS nicht mehr hochfährt. Stärkeres Netzteil für den Zero oder Zero nach dem Einschalten erst einstecken.

5. Installation vom Stick/Zero testen.

6. SSH wieder aktivieren und vender Datei runterladen (geht am einfachsten)
- SSH auf das NAS
- in das Verzeichnis /dev wechseln:
cd /dev
- synoboot2 mounten (man muss in /dev sein, anders geht es nicht)
sudo mount synoboot2 /mnt
- vender Datei kopieren
sudo cp /mnt/vender /volume1/ZIEL_VERZEICHNIS

7. 713+ installieren
Entweder das Image von @RSfuchs auf den USB-Stick/Zero flashen, den Stick dann unter Windows einhängen und die vender-Datei auf die 2te Partition kopieren, oder sich das 713+ PAT runterladen (synology_cedarview_713+.pat), das dann mit 7z 2 mal entpacken und die Files aus dem flashupdate Debian package extrahieren. Ich verwende dazu unter Linux den Midnight-Commander (Befehl: mc) mit dem man einfach aus dem deb-File rauskopieren kann (Ordner: CONTENT)
Die Files rd.gz, zImage, checksum.syno, grub_cksum.syno auch auf die 2te Partition vom Stick kopieren. In der checksum.syno noch die Zeilen löschen von den Files, die sich nicht auf der 2ten Partition befinden.

8. Das NAS sollte dann als DS713+ booten und auch 7.1 installierbar sein.

Ich hab ca. 3 Stunden gebraucht um alles nachvollziehen zu können, tue mich aber auch beim Reverse Engineering einfacher.

RS814+ habe ich noch ein paar Schwierigkeiten. Die von @RSfuchs angedeutete vender Datei im format_version=2 kann ich auch nachbauen.
Checksummen berechnen ist kein Hexenwerk. Werde ggf. noch ein kleines Script veröffentlichen. Jedoch hat die Installation noch nicht geklappt.

Wenn jemand das Shell-Script für den Raspberry Zero haben möchte, einfach PN, möchte nicht den Post mit Shell-Code zumüllen :)
 
Zuletzt bearbeitet:

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.767
Punkte für Reaktionen
3.740
Punkte
468

RSfuchs

Gesperrt
Mitglied seit
25. Mai 2017
Beiträge
391
Punkte für Reaktionen
29
Punkte
28
So wie in #149 oder vorher ist es richtig.

Ich habe immer nur die Dateien aus dem vollen Release genommen, also z.B. der DSM_RS814+_25556.pat
Dann normal über die GUI die Updates installiert. Dann klappt es bestimmt auch mit der RS814+.

OFF Topic: Für die DS3621xs+ braucht es nicht einmal eine DS212+, ... nur Daddies Server :ROFLMAO:. Den DSM8-download finde ich aber nicht. Höchster Stand ist immer noch 7.1.1-42962-3
 
Zuletzt bearbeitet:

Benie

Benutzer
Contributor
Sehr erfahren
Mitglied seit
19. Feb 2014
Beiträge
8.473
Punkte für Reaktionen
3.510
Punkte
344
Zuletzt bearbeitet:

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.767
Punkte für Reaktionen
3.740
Punkte
468
Ach was, ich mach aus der DS212+ gleich eine DS3621xs+ mit DSM 8.0 (y):ROFLMAO:
 
  • Haha
Reaktionen: Benie und Thonav

RSfuchs

Gesperrt
Mitglied seit
25. Mai 2017
Beiträge
391
Punkte für Reaktionen
29
Punkte
28
Off Topic: Wird jetzt aus der DS212+ eine 220+ mit DSM 7.1.1 ;)
Off Topic:
Zu schräg. Aber meine DS710+ lief bereits als DS3615xs mit 6.2.3. Als DS920+ müsste ich erneut testen. Falls ich mal wieder eine besitze, wird das mit DSM 7.1.1. nachgeholt.
 
Zuletzt bearbeitet:

strange

Benutzer
Mitglied seit
04. Dez 2022
Beiträge
3
Punkte für Reaktionen
5
Punkte
53
mal ganz auf die schnelle hingezimmert:

Python:
#!/usr/bin/env python

from textwrap import wrap


mac_addresses = ["001132000000", "001132000001"]
sn = "xxxxMANxxxxxx"

with open("vender_source", "rb") as f:
    vendor = list(f.read(65536))

count = 0
for mac in mac_addresses:
    mac_bytes = wrap(mac, 2)

    sum = 0
    for b in mac_bytes:
        i = int(b, 16)
        sum += i
        vendor[count] = chr(i)
        count += 1

    checksum = sum % 256
    vendor[count] = chr(checksum)
    count += 1

chk = 0
for i in list(sn):
    chk += ord(i)

s = "SN={},CHK={}".format(sn, chk)

count = 32
for i in list(s):
    vendor[count] = i
    count += 1

with open("vender", "wb") as f:
    f.write(''.join(vendor))
ein vender file version2 habe ich auch recht schnell gefunden.
 
  • Like
Reaktionen: RSfuchs

Stationary

Benutzer
Sehr erfahren
Mitglied seit
13. Feb 2017
Beiträge
3.941
Punkte für Reaktionen
1.262
Punkte
194
Wird jetzt aus der DS212+ eine 220+
Klar, Prozessor-Upgrade über Emulation inklusive. Da wird dann direkt aus einem Marvell Kirkwood ein Intel Celeron. Nur den Aufkleber für den Prozessor mußt Du noch selbst drucken.
 
  • Haha
Reaktionen: ctrlaltdelete

RSfuchs

Gesperrt
Mitglied seit
25. Mai 2017
Beiträge
391
Punkte für Reaktionen
29
Punkte
28
@strange
Der Python code läuft bei mir durch, danach ist die vender_source vermaggelt. Da ich kein Programmierer bin, wäre eine kurze Beschreibung des Nutzens und der Anwendung vonnöten.
 
Zuletzt bearbeitet:

strange

Benutzer
Mitglied seit
04. Dez 2022
Beiträge
3
Punkte für Reaktionen
5
Punkte
53
Das script liest ein file "vender_source" ein, welches als Template dient, packt da die mac Adressen und die serial rein, mit dazugehörigen Checksummen und schreibt es als "vender" raus.
 

RSfuchs

Gesperrt
Mitglied seit
25. Mai 2017
Beiträge
391
Punkte für Reaktionen
29
Punkte
28
Die Dateiinput/-output vender_source/vender konnte sogar ich dem Code entlocken. Sonst wäre der Code ja nicht fehlerfrei durchgelaufen. Aber welches Template format_version=1 oder2? Müssen Platzhalter dasein, die neuen Werte im Code oder in der vender_source eingetragen werden?
 
Zuletzt bearbeitet:

RSfuchs

Gesperrt
Mitglied seit
25. Mai 2017
Beiträge
391
Punkte für Reaktionen
29
Punkte
28
Für ein "Modell-Upgrade" müssen die vier markierten Dateien aus dem PAT-file die auf der zweiten Partiton ersetzten.
 

Anhänge

  • Unbenannt.JPG
    Unbenannt.JPG
    107,5 KB · Aufrufe: 46

Styler

Benutzer
Mitglied seit
19. Feb 2023
Beiträge
51
Punkte für Reaktionen
4
Punkte
8
Zuletzt bearbeitet:
  • Like
Reaktionen: Benie


 

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