Jump to content
XPEnology Community

QNAP auf eigener Hardware


fa2k

Recommended Posts

Moin Jungs,

ich habe mich neulich in einigen chinesischen Foren rum getrieben und die Jungs haben einen Weg gefunden QNAP auf eigener Hardware zu betreiben. Ich habe es auf einem J3455-ITX Board getestet und es funktioniert tadellos. Man kann sich das QNAP Modell aussuchen und die Installation ist recht simpel (mittlerweile). Besteht Interesse an einer Anleitung?

QNAP1.PNG

Edited by fa2k
  • Like 6
Link to comment
Share on other sites

Versucht mal euer Glück. Ich habe die Dateien und eine "improvisierte Anleitung" hochgeladen.

https://mega.nz/folder/61kFmbCD

Schlüssel: dQ_oZWrySzqjpddyBM5Nvw

 

Unter VMware habe ich es nicht geschafft eine "Nutzfestplatte" für das QNAP OS sichtbar zu bekommen. Auf einem J3455-ITX Board funktioniert das hingegen super. 

Zusammengefasst lässt sich das Vorgehen folgendermaßen beschreiben:

IMG Datei auf einen USB Stick schreiben (Win32DiskImager) und davon booten.

(a) im Bootmenü auswählen und das Terminal starten.

Gewünschte Werte in die my_create_qnap_boot schreiben und abschließend das Skript ausführen.

Nach einem Neustart könnt ihr schon mit QFinder versuchen die QNAP zu finden.

 

Lasst mal hören, wie ihr damit zurecht kommt und ob es klappt

  • Like 1
Link to comment
Share on other sites

1 hour ago, ente_b said:

klar, gerne, witzigerweise bin ich gerade dabei, aus TS-859 TS-459 jeweils auf eine XPEnology umzubauen ... mal sehen, ob es klappen wird, DOM wurde erstmal per Image gesichert

Ich habe mich so arg an die Synology gewöhnt, dass ich sehr überrascht war von der QNAP. Die ist im Vergleich voll kompliziert. 😅

Link to comment
Share on other sites

Danke für die Anleitung fa2k , 

Meine Daten....

Test : Msi H81M-P33 Board   1000GB 2.5HD  6GB Ram 

alles ok bis jetzt + Emby Server...

1 USB QNAP-BOOT.img
1 HD  Keine Partition 
1 Monitor
Boot mit USB TinyCore auf Bildschirm  [a] auswählen
Terminal starten  Symbol unten rechts
ifconfig  IP wird Angezeigt
am Pc Putty starten mit der IP  Benutzer = tc Password = 123456

1. vi ./my_create_qnap_boot 
2. i auf der Tastatur
3. eigene daten editieren, bei mir:
MODEL_TYPE="QZ290_10"
PATCHED_FIRMWARE="TS-X53D/TS-X53D_20200402-4.4.2.1262"
https://download.qnap.com/Storage/TS-X53D/
4. ESC 
5. :wq
6. sudo ./my_create_qnap_boot
Bildschirm abwarten bis es fertig ist 
am Nas TinyCore Links unten Beenden und neu Booten.

test1.jpg

test2.jpg

test3.jpg

  • Thanks 1
Link to comment
Share on other sites

sehr gerne. Freut mich zu hören, dass es auch woanders funktioniert. Der ältere Loader war um einiges unhandlicher, da man die Patch Dateien für jede Version suchen und anpassen musste. Dieser hier macht das automatisch

Link to comment
Share on other sites

verwendete bitte nur den e1000e Treiber in der VM, weil keine VMware-Tools enthalten sind.

 

Probier mal die Netzwerkkarte einmal im ESX zu deaktivieren und wieder zu aktivieren, dann sollte das OS den Wechsel mitbekommen

Edited by fa2k
Link to comment
Share on other sites

1 hour ago, fa2k said:

verwendete bitte nur den e1000e Treiber in der VM, weil keine VMware-Tools enthalten sind.

 

Probier mal die Netzwerkkarte einmal im ESX zu deaktivieren und wieder zu aktivieren, dann sollte das OS den Wechsel mitbekommen

 

Ich teste das gerade auf meinem Mac in Parallels. Da es es auch ein e1000e Netzwerkadapter, im ersten Schritt die Files downloaden geht auch super aber dann findet der Qfinder nichts oder wie connecte ich mich nach der Installation? 

Link to comment
Share on other sites

kleine Frage dazu. Sollte man das "ModelType" bestenfalls seinem Mainboard anpassen? Ich habe ein ASRock J3455 mit ner zusätzlichen SATA Karte für insgesamt 6 Festplatten.

 

Das einzige gerät was mir da pauschal einfällt ist das 653B. Da wäre ja theoretisch auch ein PCIe Steckplatz drin, wohl aber nicht für ne SATA Karte nehm ich an :D.

 

Deinem Tutorial nach zu urteilen gab es keine Probleme mit Netzwerkkarten von Realtek oder hast du ein anderes J3455 Board verwendet?

 

Grüße

becher

Link to comment
Share on other sites

es ist sinnvoller das mehr oder weniger passende Modell zum Board auszusuchen. Man kann einiges an der Hardware-Konfig anpassen. Wenn du das my_create_qnap_boot Skript ausgeführt hast, taucht unter /home/tc/mymodel eine model.conf und eine model_<Modelltyp>.conf auf. Darin werden die PCI Adressen der verbauten Komponenten angegeben. Das Skript patched automatisch die Festplattenadapter. Wenn man z.B. zwei SATA Controller hat, wird das nicht ganz hinhauen.

Wenn du lspci mit dem tc Benutzer ausführst, bekommst du ja alle verbauten Komponenten aufgelistet, die können dann in der model.conf eingetragen werden. Ein Beispiel:

 

00:1a.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2 (rev 05)

Die Zahlen am Anfang sind in Hex, QNAP will es in einem bestimmten Format und in Dezimal. Somit wird aus 00:1a.0 -> B00:D26:F0 . Diesen Wert kannst du in der model.conf eintragen. In diesem Beispiel ein USB Controller. Wenn du deine Anpassungen abgeschlossen hast sudo ./re_packing ausführen und das System neustarten

 

Das my_create_qnap_boot Skript benutzt zum patchen der Festplattenadapter das /home/tc/hardware_check skript. Ganz oben steht wonach gesucht werden soll und als Ausgabe folgt die QNAP PCI Adresse. Wenn du einen anderen Festplattencontroller als default haben willst, trage anstatt SATA z.B. LSI Logic ein. Je nachdem was bei dir unter lspci angezeigt wird

  • Like 2
Link to comment
Share on other sites

Hat es jmd unter ESXi zum laufen gebracht?

Die VMDK lief zuerst bei mir nicht, aber nach der Umwandlung mit dem StarWind V2V Image Converter konnte ich zumindest die VM starten und die Konfiguration vornehmen.

 

Mit der Intel E1000E ist das Gerät auch im QFinder zu finden. Die Platten habe ich jeweils als SATA einghangen. Ich bin mal gespannt wie es funktionert.

 

Ich hatte auch schon das hier im Forum befindliche DS1019+ Image ausprobiert, hab es dann aber auch gleich wieder entsorgt, da es wie das DS918+ Image ist, abzgl. der Erweiterung auf 16 Laufwerke... und damit eher ein Rückschritt.

 

Für diejenigen die ungerne mit vi arbeiten, habe ich hier ein script erstellt mit dem man die Anpassung an der Datei my_create_qnap_boot vornehmen kann, nachdem man sich mit putty verbunden hat:

MODEL_TYPE="QY380_QY390_10_11"
PATCHED_FIRMWARE="TS-X85_20200410-4.4.2.1270"
DOWNLOAD_URL="https://download.qnap.com/Storage/TS-X85/"

sed -i "s|MODEL_TYPE=\".*\"$/MODEL_TYPE=|"$MODEL_TYPE\"|" my_create_qnap_boot
sed -i "s|PATCHED_FIRMWARE=\".*\"$/PATCHED_FIRMWARE=|"$PATCHED_FIRMWARE\"|" my_create_qnap_boot 
sed -i "s|DOWNLOAD_URL=\".*\"$|DOWNLOAD_URL=\"$DOWNLOAD_URL\"|" my_create_qnap_boot 

head -n10 my_create_qnap_boot

Einfach in einen Texteditor (VisualStudio Code, Notepad++, Sublime Text) pasten, die ersten drei Zeilen anpassen. Alles in die Zwischenablage kopieren und dann mit einem Klick auf die rechte Maustaste in Putty einfügen.

Edited by haydibe
Link to comment
Share on other sites

@synofreak alle relevanten URL's stehen in dem PDF in Post#5


@fa2k: könntest Du zu den Anpassungen an der model.conf etwas genauer erklären?

 

 

Es gibt die Bereiche

- M.2 SSD 1-6 , von [System Disk 1] bis [System Disk 6]

- SSD 1-4 , von [System Disk 7] bis [System Disk 10]

- Disk 1-12 , von [System Disk 11] bis [System Disk 22]

 

Wenn ich es recht verstehe, dann muss der DEV_BUS für jede einzelne System Disk auf die dezimal-Representation der dreiteiligen Hexadezimal Device-Id aus lspci ändern?

 

Wenn ich es richtig verstehe, dann zerteilst Du "00:1a.0" in 00, 1a und 0 und rechnest für jeden Teil den Dezimalwert aus und packst den Prefix-Buchstaben davor:

00 => 00

1a =>16 + 10 = 26

0 => 0

 

und dann hängst Du jeweils diese Fest vorgegebenen Buchstaben davor, so dass Du B00:D26:F0 erhältst.

 

Dann ist 0b:00.0 dann B11:D00:F0. Darunter verbirgt sich mein "Serial Attached SCSI controller: LSI Logic / Symbios Logic SAS1068 PCI-X Fusion-MPT SAS (rev 01)"

 

Weitere Umrechung:

02:01.0 -> B02:D01:F0 (typisch für SATA controller: VMware SATA AHCI controller)

 

Die Adresse für den Adapter habe ich mit dem Befehl `grep "System Disk" model.conf -A2` identifiziert.

 

Dann in dem Snippet die Adreses von DEV_BUS angepesst, TARGET hat die ausgerechnte Adresse  für meinen LSI Logic SAS Adapter bekommen und dann die drei Zeilen in Putty reingepastet.

 

DEV_BUS=B02:D01:F0
TARGET=B11:D00:F0
sed -i "s|DEV_BUS=$DEV_BUS|DEV_BUS=$TARGET|g" model.conf

... und hat nicht funktioniert. Es wird weiterin keine Festplatte gefunden.

 

Edited by haydibe
Link to comment
Share on other sites

Hallo!

@haydibe

Ich war mal wieder etwas zu eilig.

Dein Script hat mir schonmal geholfen! 🙂

Habe das so einfach genommen ohne auf die genaue Modellnummer passend zu meiner Hardware zu achten.

Es scheint i.A. zu laufen werde berichten wenn alles nach Konfiguration und Dauerbetrieb läuft.

Danke nochmal für Deine Bemühungen.

mfg

H.S.

Link to comment
Share on other sites

Mein Skript war fehlerhaft, da ist das Trennzeichen | an die falsche Stelle gewandert.

MODEL_TYPE="QY380_QY390_10_11"
PATCHED_FIRMWARE="TS-X85_20200410-4.4.2.1270"
DOWNLOAD_URL="https://download.qnap.com/Storage/TS-X85/"

sed -i "s|MODEL_TYPE=\".*\"$|MODEL_TYPE=\"$MODEL_TYPE\"|" my_create_qnap_boot
sed -i "s|PATCHED_FIRMWARE=\".*\"$|PATCHED_FIRMWARE=\"$PATCHED_FIRMWARE\"|" my_create_qnap_boot
sed -i "s|DOWNLOAD_URL=\".*\"$|DOWNLOAD_URL=\"$DOWNLOAD_URL\"|" my_create_qnap_boot

 

Link to comment
Share on other sites

Ich glaub eher das es mit den Default-Werten läuft. Nur die letzte "sed" Zeile war korrekt. Wegen der musste ich ein anderes Trennzeichen verwenden und hab es dann bei den anderen Zeilen nachgezogen, damit es einheitlich aussieht.

 

Ich komme bei ESXi leider nicht weiter mit dem Controller bzw. mit der Erkennung der Platten.

 

Scheinbar war es keine gute Idee die 4.4.2er Firmware aufspielen zu wollen. Mit der 4.4.1er kann ich mich zumindest mit admin:admin einloggen.

Die Bootplatte mit 1GB (hängt an 02:01.0) , als auch die Datenplatte mit 16GB (hängt an 02:02.0) werden erkannt. Für die System Disk habe ich B02:D02:F0 in model.conf eingetragen.

harddisks.JPG

Edited by haydibe
Added image
Link to comment
Share on other sites

4 hours ago, haydibe said:

Die Bootplatte mit 1GB (hängt an 02:01.0) , als auch die Datenplatte mit 16GB (hängt an 02:02.0) werden erkannt. Für die System Disk habe ich B02:D02:F0 in model.conf eingetragen.

Das die Festplatte vom OS erkannt wird, heisst leider nicht, dass es auch benutzt werden kann. Das mit den Werten hast du aber richtig erfasst und deine Vermutungen passen.

Wo ich noch selber Schwierigkeiten habe sind die DEV_PORT Werte, da z.B. mein LSI Controller zwar erkannt wird aber die Festplatten trotzdem nicht angezeigt werden obwohl die richtige Adresse eingetragen ist. Mir ist aufgefallen, dass die kleineren QNAP Modelle ohne M2 SSDs sehr viel besser funktionieren, als solche mit.

 

5 hours ago, haydibe said:

@fa2k: könntest Du zu den Anpassungen an der model.conf etwas genauer erklären?

Es gibt die Bereiche

- M.2 SSD 1-6 , von [System Disk 1] bis [System Disk 6]

- SSD 1-4 , von [System Disk 7] bis [System Disk 10]

- Disk 1-12 , von [System Disk 11] bis [System Disk 22]

 

Je größer das Modell, desto mehr "Bereiche" gibt es. Dem System ist es grundsätzlich "egal" ob du an dem Platz eine SSD oder HDD hast. Einzig die Anzeige ist dann falsch, wenn du nur eine HDD an einem SSD Slot anschließt. Es ist wohl einfacher ein kleineres Model ohne SSD Bereich herzunehmen, in dem nur Disk 1-x existieren.

 

Ändere die modelspezifische conf-Datei (model_QY380_QY390_10_11.conf) ebenfalls ab, da beide Dateien in das Bootimage kopiert werden

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...