Я хочу добывать эфир и уже несколько дней пытаюсь синхронизировать блокчейны.
Я пробовал использовать geth --fast
команду, и она всегда зависала, как на картинке.
Мой компьютер работает под управлением 64-битной Windows 10 с установленным geth 1.4.10. Я также пытался использовать geth --rpc
, но это дало мне тот же результат. Я догадался, что это из-за того, что мой провайдер блокирует P2P-соединение, но после того, как я попытался подключиться через VPN, ничего не изменилось.
Я уже настроил синхронизацию времени с time.nist.gov, как подсказывают некоторые решения, которые я нашел.
Также у меня есть проблема с зависанием MIST при «поиске пиров» при запуске без какого-либо прогресса.
Что я должен сделать, чтобы сделать это дело?
Я думаю, ключом к разгадке здесь является сообщение «ВНИМАНИЕ: записал блок генезиса Ethereum по умолчанию».
Я бы попробовал переименовать каталог данных по умолчанию (см. «Не синхронизация из-за «необработанной ошибки дерева: отсутствующий узел дерева» для путей»), затем попробуйте geth --fast console
.
Вы можете скопировать хранилище ключей в каталоге данных из старого каталога данных в новый каталог данных, чтобы сохранить свои учетные записи. И в случае успеха удалите свой старый переименованный каталог данных
В качестве альтернативы вы можете попробовать geth removedb
удалить блокчейн и базу данных состояний. Тогда беги geth --fast console
.
Предупреждение исходит от go-ethereum — eth/backend.go, строки 239-248 , и кажется, что geth
не может найти блок генезиса, поэтому пишет новый. Исходный код выглядит следующим образом:
// load the genesis block or write a new one if no genesis
// block is prenent in the database.
genesis := core.GetBlock(chainDb, core.GetCanonicalHash(chainDb, 0))
if genesis == nil {
genesis, err = core.WriteDefaultGenesisBlock(chainDb)
if err != nil {
return nil, err
}
glog.V(logger.Info).Infoln("WARNING: Wrote default ethereum genesis block")
}
removedb
прежде чем опубликовать вопрос, но это не помогло.removedb
Удалить данные цепочки, но не конфиги
.
Ричард Хоррокс
admin.peers
Тоже пусто ? (Я предполагаю, что это произойдет, если вы застряли в «поиске пиров».) Убедитесь, что порты TCP и UDP 30303 правильно перенаправляются через любой брандмауэр, который у вас может быть.сари
net.peerCount
возвращает 0. Я пытался вручную подключиться к одноранговому узлу,admin.addPeer()
но это не удалось.