Go-Ethereum

如何拯救我的乙太幣

  • September 9, 2017

這發生在我身邊一段時間,我對此感到不安。在某些終端中,我從以下內容開始geth

geth -rpc --mine --fast --cache=1024

在另一個終端中,我使用我的 GPU 開始我的:

ethminer -G --farm-recheck 200

所以我使用第三個終端進入控制台:

geth attach

在那裡我可以列出我的兩個錢包

> eth.accounts
["0x2d8a0028428d556882818d9a8d2d1ed7a0aed609", "0x1657ea92300a544aee12a1b57f7ef2a2f37bbc24"]

一段時間後,我什至可以看到一些乙太幣:

> web3.fromWei(eth.getBalance(eth.coinbase), "ether");
95

但是,如果關閉第一個geth(帶有-rpc標誌),當我重新啟動它時,我的餘額顯示0。在Etherscan我的帳戶仍然顯示 0 eth。我試圖從我的主要帳戶到第二個帳戶進行交易,例如:

eth.sendTransaction({from:eth.coinbase, to:"0x1657ea92300a544aee12a1b57f7ef2a2f37bbc24", value: web3.toWei(90, "ether")})

exceeding gas limit我錯了,我確定我是,因為當我要求我的gasLimit時,

> eth.getBlock("latest").gasLimit

我得到了附近的東西5060geth我現在的其他一些狀態:

> net.listening
true
> eth.getBlock("latest").number
20
> net.peerCount
25
> eth.syncing
{
 currentBlock: 3123614,
 highestBlock: 4253828,
 knownStates: 10525102,
 pulledStates: 10519480,
 startingBlock: 0
}

幾乎有 2 天我的geth -rpc控制台仍在導入新的塊和狀態。每次我重置-rpc伺服器時,如何讓我的乙太賬戶保持我的餘額?我在這裡發現agenesis.json會限制我的gasLimit,但我只是找到瞭如何通過發送json文件來初始化新伺服器,如何更新現有伺服器?

我知道我之前已經回答過這個問題,但我找不到它,所以我假設原始發布者已經刪除了這個問題。(如果有人能找到,請將此文章標記為重複!)

你的節點沒有完全同步,所以當你找到一個塊時,你實際上是在區塊鏈上創建一個分叉。但是你的分叉不是最長的鏈,因此不是每個人都在使用的(比如在 Etherscan 上)。每當你geth收到一些新區塊並且它發現另一條鏈比你一直在處理的鍊長時,它就會意識到它認為你獲得的乙太幣只在你的分叉中。因此,它將餘額“重置”為其他人認為您的餘額(在本例中為 0)。如果你在區塊 1000 中有一個乙太幣,你可以將它“花費”在你的分叉上,你的餘額會一直重置為 1(至少在你同步到你的交易實際廣播的時間點之前)。一世'

你也很容易找到很多塊,因為你是在區塊鏈上建構的,處於早期的挖礦難度較低的狀態。如果你在一周內發現了 95 個乙太幣,那麼你需要擁有大約 500TH/s 的挖礦能力(或者超過 15000 個 R9 580 類型的 GPU)。

引用自:https://ethereum.stackexchange.com/questions/26121