Ich höre immer wieder, wie einfach man doch ein Teil des Netzwerks sein kann, das könne wirklich jeder. Grundsätzlich würde ich dem auch zustimmen und finde das richtig gut. Ich möchte hier aber mal meine Erfahrungen mit meiner Node aufschreiben, weil es bei mir leider nicht so einfach klappte wie erhofft und ich einige Probleme hatte.
Ein kurzes Fazit vorab: Ich ermutige wirklich jeden, seine eigene Node zu betreiben. Seid euch aber bewusst, dass es zu Problemen kommen kann, die ein Computer-Laie nicht oder nicht so einfach alleine lösen kann. Bringt Geduld mit und los gehts.
Vorab noch kurz zu mir: Ich bin kein Programmierer, aber ich weiß schon, wie man einen Computer bedient. Ich bin zwar klassischer Windows Nutzer, habe aber schon oft PCs zusammengebaut und auch Softwareseitig einige Erfahrungen gesammelt, gelegentlich auch mit Linux, Netzwerken, Terminals usw.
Die Reise begann vor bald einem Jahr, als ich alles eingekauft habe, den Pi 5 mit 8GB, 2TB SSD mit schnellem Adapter, Originalladekabel und ein passiv gekühltes Gehäuse.
Die Einrichtung an sich ging tatsächlich sehr schnell und schon bald lief Umbrel und saugte die Blockchain aus dem Internet. Ich kam innerhalb ca 10 Tagen schon sehr weit, als ich auf die glorreiche Idee kam, es wäre toll zusätzlich noch Knots zu installieren, dann kann ich ja 2 Nodes auf einem Pi laufen lassen, wie cool ist das denn? (Heute würde ich auf keinen Fall mehr Knots nutzen und auch auf keinen Fall mehr 2 Bitcoinknotenpunkte auf einem Gerät).
Damit fingen die Probleme an. Die 2 konkurrierenden Programme haben mir den Pi so zerschossen, dass garnix mehr ging. Ich hatte zu dem Zeitpunkt extrem wenig Zeit und so blieb die Node erstmal abgesteckt liegen, das Projekt eigene Node auf unbestimmte Zeit abgesagt.
Nach einer Weile installierte ich Umbrel dann neu und setzte die Node, nur mit Bitcoin Core, erneut auf. Inzwischen gab es eine neue Core Version (29) und auch eine neue Umbrel Version. Anfangs ging alles gut, jedoch bereits nach 20% des Blockchain-Syncs merkte ich, dass er dieses mal deutlich langsamer war als beim ersten mal. Ich ließ es eine Zeit laufen, aber es war mir viel zu langsam, dauerte alles mindestens 5 mal so lang wie beim ersten Versuch. Ich spielte mit Port Forwarding im Router herum, ich erhöhte den zugewiesenen Arbeitsspeicher, Cache, senkte maximale Peers usw. Ich kühlte den Pi für 2 Tage mit einem großen PC Lüfter. Alles half nichts, ich hatte meine Node viele Wochen laufen und kam nicht mal auf 50%.
Etwas enttäuscht, dass das lange herumsuchen und „basteln“ nichts geholfen hat, schmiss ich das Gerät wieder in den Schrank.
Eine weile später hatte ich neuen Mut gesammelt und wollte es diesmal mit Raspiblitz versuchen, das würde doch sicher viel besser laufen?! Also setzte ich alles wieder neu auf. Aber egal was ich machte, es erschien immer nur „HDD-Error“ und ich bekam den Pi nicht zum Laufen. Ich hing viele Stunden darüber, versuchte alles um das Ding zum Laufen zu bringen. Raspiblitz auf SD, SSD, sogar HDD installieren, und tausende Eingaben, immer die gleiche Fehlermeldung.
Um auszuprobieren, ob meine SSD und der Pi überhaupt noch funktionierten, probierte ich es dann doch wieder mit Umbrel. Ich war richtig begeistert zu sehen, dass alles startete und ich wieder dabei war, die Blockchain herunterzuladen. Am nächsten Morgen war er auch schon bei 12%. Jetzt geht es endlich so richtig los :) Kurz darauf ist jedoch sowohl das UI, als auch der Download extrem langsam geworden. Es hat zu diesem Zeitpunkt teils mehrere Minuten gedauert, um die Bitcoin Core App zu öffnen. Und nachdem sie dann offen war, zeigte sie für weitere 5 bis 20(!) Minuten nur 0% an. Jede Interaktion mit Umbrel war sehr langsam, teilweise fror das UI komplett ein und es ging über Stunden gar nichts mehr. In dem Glauben, ich hätte meine SSD kaputt gemacht, habe ich diese einen ganzen Tag lang immer wieder formatiert, neu installiert und überprüft. Schließlich habe ich eine neue gekauft, weil ich stundenlang in irgendwelchen Foren herausgelesen habe, dass es wohl daran liegen würde.
Neue SSD gekauft. Altes Problem. Juhu :/
Ich hockte viele Tage in meiner gesamten (wenigen) Freizeit nur an der Node und irgendwelchen meterlangen Codes, die ich in die CMD oder das Terminal einhämmerte. Ich hatte zu dem Zeitpunkt große Lust, die ganze Node solang an die Wand zu schlagen, bis sich die Sache endgültig erledigt hat.
Chat GPT hat mir übrigens fast nichts geholfen. Er hat mir unzählige Terminal Eingaben genannt, die es nicht gibt und hat mich Dateien so bearbeiten lassen, dass der Pi danach nicht mehr gestartet ist und ich alles formatieren musste.
Der letzte Plan war einfach, das ganze ein letztes mal neu aufzusetzen und diesmal wirklich so lange laufen zu lassen, bis es fertig war, auch wenn es viele Monate dauern sollte.
So gingen die Wochen dahin und langsam, sehr langsam kam ich über die 50%. Das UI war immer noch extrem langsam und immer wenn ich die Core App zum laufen brachte, zeigte sie mir 0 Peers oder maximal nur 2 Peers an. Zwischendurch versuchte ich es noch mit einem anderen USB Adapter für die SSD, aber keine Besserung.
Ab 72%, ungefähr ab der Blockhöhe an der Taproot eingeführt wurde, ging es dann wirklich nur noch sehr langsam (unter 1% Fortschritt pro Tag). Manchmal zeigte es mir am nächsten Tag sogar 1% weniger an, als am Vortag. Lief also richtig gut…
Nach insgesamt mehreren Monaten war ich dann fast bei 90% angekommen… und die Node wurde noch viel, viel langsamer. Für 0,01% Fortschritt habe ich mehrere Stunden gebraucht. Also eine errechnete übrige Dauer für den Blockchain Synch, wenn es weiter so geht, ca 6 bis 12 Monate.
Das kannst du doch keinem erzählen, vor allem weil ich ja schon 90% erledigt hatte… Solange wollte ich dann doch nicht warten.
Nachdem ich mir zum unzähligsten mal die Nacht um die Ohren geschlagen habe und alle erdenklichen Einstellungen im Router, in Umbrel und in Core geändert hatte (glaubt mir bitte, ich hatte inzwischen jeden Vorschlag aus jedem Forum ausprobiert) ohne dass es auch nur ein bisschen mehr Geschwindigkeit gebracht hätte, fasste ich wieder einen neuen (allerletzten) Plan.
Die Blockchain sollte am PC heruntergeladen werden und dann auf die SSD des Pi rüberkopiert werden. Das hatte ich vorher noch nicht probiert, da ich dafür Linux brauche und das aktuell nirgends installiert hatte. Auf dem Computer hat Bitcoin Core die Blockchain rekordverdächtig in wenigen Stunden heruntergeladen. Soweit so gut, mal ein Erfolgserlebnis.
Da das für Umbrel benötigte Format der SSD von Windows nicht erkannt wird, musste ich erstmal Linux zum Laufen bringen und dort den Befehl finden, wie ich die von Umbrel gesperrten Ordner überhaupt öffnen kann.
Nur um dann nach den kopieren und SSD anschließen in Umbrel zu sehen, dass Bitcoin Core wegen eines Fehlers nicht läuft. Also wieder nicht weitergekommen.
Für diese Spielereien sind ein paar meiner Urlaubstage draufgegangen. Ich kann gar nicht mehr sagen, wie oft ich damals Umbrel neu installiert und die 1TB Blockchain rüberkopiert habe, mit verschiedenen Konstellationen und Eingaben usw. Einmal hab ich es tatsächlich geschafft, dass nach dem kopieren die gleiche Bitcoin Core App 5(!) mal auf dem Pi installiert war. Ich hatte 5 mal das gleiche Icon auf meinem Umbrel Desktop… fragt mich nicht wie das ging, ich hatte eigentlich nichts dergleichen gemacht.
Schließlich lag das Problem daran, dass Umbrel scheinbar keinen Schreibzugriff auf die kopierten Blockchain Ordner hatte. Ich schreibe am Ende mal alle Schritte auf, falls es jemand nachmachen möchte.
Also gut, jetzt lief alles, Blockchain auf 100%, weil rüberkopiert. Nur der indexes Ordner fehlte noch, deswegen gab ich in Umbrel den Befehl -reindex ein, um die kopierten Blöcke erneut zu verifizieren.
Doofe Idee, denn nach einem Tag, nach dem der reindex nicht mal auf 10% war, stellte sich heraus, dass der reindex Vorgang ähnlich lang dauern würde wie der komplette neue Download der Blockchain.
Also zum tausendsten mal alles von vorne. Diesmal in Bitcoin Core am PC auch den Indexes Ordner erzeugen lassen und mit rüberkopiert, was letztendlich zu einer laufenden, voll synchronisierten Node geführt hat.
So läuft sie nun seit einiger Zeit ohne Probleme. Das UI ist blitzschnell und ich kann auch viele andere Apps neben Bitcoin Core laufen lassen.
In einem anderen Beitrag wurde von mehreren Seiten berichtet, dass es seit der Core Version 29 und 30 extrem lange dauert die Blockchain herunterzuladen. Ich vermute also, dass es daran lag oder dass mein Pi irgendeinen Schaden hat oder beides oder etwas ganz anderes….
Ich hoffe wirklich, dass ich niemanden mit meinen Erfahrungen verschrecke eine eigene Node aufzusetzen und mir ist klar, dass ich mich wahrscheinlich doof angestellt habe und ganz viele (unerfahrene) Leute überhaupt keine Probleme hatten, eine Node aufzusetzen.
Aber ich habe als halbwegs erfahrener Computernutzer ca ein halbes Jahr und unzählige „Nachtschichten“ gebraucht um meine Node zum Laufen zu bringen. Wenn ich an meine Mutter denke, die meine Hilfe braucht um Bilder vom Desktop auf einen USB-Stick zu ziehen, dann komme ich eindeutig zu dem Ergebnis, dass wohl nicht jeder eine eigene Node aufsetzen kann, vor allem nicht, wenn man an irgendeiner Stelle auf Probleme stößt.
Checkliste Blockchain vom PC kopieren:
Bitcoin Core auf Computer downloaden und downloaden lassen.
In den Einstellungen die config bearbeiten und txindex=1 reinschreiben.
Falls noch nicht geschehen, die Node kurz anlaufen lassen und Bitcoin installieren, damit die Ordner da sind.
Spätestens jetzt Linux starten, in meinem Fall Xubuntu
Festplatte mit „PC-Bitcoin-Core“ und Node-SSD an Linux anschließen
sudo thunar im Terminal eingeben (war bei mir erforderlich, da der Bitcoin Ordner sonst nicht geöffnet werden konnte.)
Von der PC Festplatte die Ordner Blocks, Chainstate und Indexes kopieren auf die Node-SSD und die dortigen Ordner mit diesen Bezeichnungen ersetzen.
Jetzt noch mit folgenden befehlen die Schreibrechte für die eben kopierten Ordner an Umbrel vergeben, kann sein, dass euer Pfad etwas anders aussieht, je nach Installationsweise.
sudo chown -R umbrel:umbrel /data/umbrel-os/home/umbrel/umbrel/app-data/bitcoin/data/bitcoin/indexes
sudo chown -R umbrel:umbrel /data/umbrel-os/home/umbrel/umbrel/app-data/bitcoin/data/bitcoin/chainstate
sudo chown -R umbrel:umbrel /data/umbrel-os/home/umbrel/umbrel/app-data/bitcoin/data/bitcoin/blocks

