Wie wechsle ich von Morden zu Ropsten?

Ich habe einen v.0.8.7-Client installiert und versucht , gemäß dieser Anleitung zu Ropsten zu wechseln . Ich habe nämlich eingetippt:

dyn906-29:~ sam$ geth -- datadir /Users/sam/Library/Ethereum/testnet/geth/chaindata/ init /Users/sam/Library/Ethereum/testnet/testnet_genesis.json; geth -- datadir /Users/sam/Library/Ethereum/testnet/geth/chaindata/ --networkid 3 console

... Synchronisierung gestartet, mit typischer (dh nachdem ich sie etwa 10 Minuten laufen gelassen habe) Konsolenausgabe:

I1124 12:07:01.281067 eth/downloader/downloader.go:298] Synchronisation failed: block download canceled (requested)
I1124 12:07:23.178469 core/blockchain.go:975] imported 3 block(s) (0 queued 0 ignored) including 0 txs in 1.001425657s. #84205 [dc3d3bcd / c0b43021]
I1124 12:07:24.448356 core/blockchain.go:975] imported 3 block(s) (0 queued 0 ignored) including 2 txs in 8.001122ms. #84208 [e716f763 / 9cdfe671]
I1124 12:07:33.003664 core/blockchain.go:975] imported 2048 block(s) (0 queued 0 ignored) including 1897 txs in 4.743529105s. #86256 [2c5e179c / dbc9325e]
I1124 12:07:37.833884 core/blockchain.go:975] imported 2048 block(s) (0 queued 0 ignored) including 676 txs in 4.821595483s. #88304 [f9215a23 / 62150759]

Was mich in dieser Ausgabe verwirrt, zeigt an, dass ich bis zu 86256 Blöcke heruntergeladen habe (siehe Ende der letzten Zeile) ... aber ich sehe hier , dass es im neuen Testnetz bisher nur etwa 35000 Blöcke gibt.

Ich habe also den Eindruck, dass ich mit Morden synchronisiere.

1. Synchronisiere ich derzeit mit Morden (statt mit Ropsten)?

2. Wie kann ich sicherstellen, dass mein Client mit Ropsten synchronisiert?

Vielen Dank.

EDIT: Die GUI erwähnt insgesamt ca. 1.800 K-Blöcke ... also bin ich mir ziemlich sicher, dass mein Client mit Morden synchronisiert. Wie also nach Ropsten ziehen?

Überprüfen Sie den Inhalt von /Users/sam/Library/Ethereum/testnet/geth/chaindata/ gibt es die Blockchain-Dateien? Wenn nicht, ist Ihr Befehl falsch

Antworten (2)

Mit Geth 1.5.3 und höher sind es 2 Schritte:

  1. Ausführen geth --testnet removedb, um Ihre Blockchain-Datenbank für das Morden-Netzwerk zu löschen.

  2. Laufengeth --testnet


ORIGINAL:

Wenn Sie verwenden geth init, datadirsollte das mit enden /testnet. Zum Beispiel:/Users/sam/Library/Ethereum/testnet

Wenn Sie andere Befehle wie verwenden geth console, datadirsollte das das übergeordnete Verzeichnis sein, in diesem Beispiel:/Users/sam/Library/Ethereum

Ja, es ist verwirrend. Aber wenn Geth 1.5.3 veröffentlicht wird, geth --testnetwird es einfacher und Sie müssen sich nicht mehr mit geth init.

Es ist hilfreich, mit einer Bereinigung zu beginnen datadir(möglicherweise müssen Sie das /testnetUnterverzeichnis manuell erstellen), aber stellen Sie sicher, dass Sie Ihre vorhandenen sichern datadir: Achten Sie darauf, dass Sie keine verlieren keystore.

Ich muss das vielleicht noch einmal überprüfen, aber ich poste jetzt, falls es hilft. BEARBEITEN: Ich werde den ursprünglichen Beitrag nicht überprüfen, da Geth 1.5.3 jetzt veröffentlicht wurde.
Der geth --testnet removedbTeil ist der nützlichste Teil Ihrer Antwort, vielleicht sollten Sie ihn etwas mehr hervorheben. Es ist eigentlich eher eine Antwort als "einfach rennen geth --testnet"
@TeleportingGoat Danke für den Vorschlag! Ich habe die Antwort verbessert (die aus einer ähnlichen Frage stammte und Ihr Kommentar sehr hilfreich war).

In Ihrem zweiten Aufruf steht ein Leerzeichen zwischen --und datadir, also führen Sie wahrscheinlich geth mit dem falschen Datenverzeichnis aus und verwenden daher den falschen Genesis-Block. Versuchen Sie es mit Laufen

geth --datadir /Users/sam/Library/Ethereum/testnet/geth/chaindata/ --networkid 3 console

Anstatt von

geth -- datadir /Users/sam/Library/Ethereum/testnet/geth/chaindata/ --networkid 3 console
du hast recht, vielen dank. Ein Teil des Problems besteht weiterhin darin, dass die Ethereum-Brieftasche, nachdem ich diesen Befehl eingegeben habe, immer noch mit Morden zu synchronisieren scheint (da angegeben ist, dass 1800.000 Blöcke heruntergeladen werden müssen). Irgendeine Idee, wie man das anstellt?