Как перейти с Мордена на Ропстен?

Я установил клиент v.0.8.7 и попытался перейти на Ropsten , следуя этим инструкциям. А именно, я набрал:

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

... синхронизация началась с типичным (т.е. после того, как я дал ей поработать около 10 минут) консольным выводом:

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]

Что меня смущает в этом выводе, так это то, что я загрузил целых 86256 блоков (см. конец последней строки)... но я вижу здесь , что в новой тестовой сети пока только около 35000 блоков.

Так что у меня такое впечатление, что я синхронизируюсь с Морденом..

1. Я сейчас синхронизируюсь с Морденом (а не с Ропстеном)?

2. Как убедиться, что мой клиент синхронизируется с Ropsten?

Спасибо.

РЕДАКТИРОВАТЬ: в графическом интерфейсе упоминается в общей сложности ок. 1800 тыс. блоков... так что я уверен, что мой клиент синхронизируется с Морденом. Итак, как перейти на Ropsten?

проверьте содержимое /Users/sam/Library/Ethereum/testnet/geth/chaindata/, есть ли файлы блокчейна? если не ваша команда неверна

Ответы (2)

При использовании Geth 1.5.3 и более поздних версий это 2 шага:

  1. Запустите geth --testnet removedb, чтобы удалить базу данных блокчейна для сети Morden.

  2. Бежатьgeth --testnet


ОРИГИНАЛ:

Когда вы используете geth init, datadirдолжно заканчиваться на /testnet. Например:/Users/sam/Library/Ethereum/testnet

Когда вы используете другие команды, такие как geth console, datadirв этом примере должен быть родительский каталог:/Users/sam/Library/Ethereum

Да, это сбивает с толку. Но когда выйдет Geth 1.5.3, geth --testnetэто упростит и вам не нужно будет заморачиваться с geth init.

Полезно начать с очистки datadir(возможно, вам придется вручную создать /testnetподкаталог), но убедитесь, что вы сделали резервную копию существующих datadir: будьте осторожны, чтобы не потерять какие-либо файлы keystore.

Возможно, мне придется перепроверить это, но пока публикую, если это поможет. РЕДАКТИРОВАТЬ: я не буду проверять исходный пост, так как Geth 1.5.3 уже выпущен.
Эта geth --testnet removedbчасть является наиболее полезной частью вашего ответа, возможно, вам следует выделить ее немного больше. На самом деле это больше ответ, чем "просто беги geth --testnet"
@TeleportingGoat Спасибо за предложение! Я улучшил ответ (который пришел из аналогичного вопроса, и ваш комментарий был очень полезен).

Во втором вызове есть пробел между --и datadir, поэтому, вероятно, вы запускаете geth с неправильным каталогом данных и, следовательно, используете неправильный блок генезиса. Попробуйте запустить

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

вместо

geth -- datadir /Users/sam/Library/Ethereum/testnet/geth/chaindata/ --networkid 3 console
вы правы, большое спасибо. Часть проблемы остается в том, что после того, как я ввел эту команду, кошелек Ethereum все еще синхронизируется с Morden (поскольку он говорит, что ему нужно загрузить 1800 тысяч блоков). Любая идея о том, как это сделать?