Go-Ethereum
無法將乙太幣分配給私有鏈中的帳戶
我正在為創世塊執行一個具有 init 屬性的測試網,我能夠創建一個帳戶,它工作正常的唯一問題是我無法將任何預乙太幣分配給我在之前的創世標誌實現中能夠做到的帳戶在跑步的時候。任何人都可以請告訴如何在這個實現中做到這一點。
是的,將您想要的地址餘額放入創世塊中。這是一個例子:
myGenBlock.json
{ "nonce": "0x0000000000000042", "difficulty": "0x20000", "mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000", "coinbase": "0x0000000000000000000000000000000000000000", "timestamp": "0x00", "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000", "extraData": "", "gasLimit": "0x2fefd8", "alloc": { "dbdbdb2cbd23b783741e8d7fcf51e459b497e4a6": { "balance": "1606938044258990275541962092341162602522202993782792835301376" }, "e6716f9544a56c530d868e4bfbacb172315bdead": { "balance": "1606938044258990275541962092341162602522202993782792835301376" }, "b9c015918bdaba24b4ff057a92a3873d6eb201be": { "balance": "1606938044258990275541962092341162602522202993782792835301376" }, "1a26338f0d905e295fccb71fa9ea849ffa12aaf4": { "balance": "1606938044258990275541962092341162602522202993782792835301376" }, "2ef47100e0787b915105fd5e3f4ff6752079d5cb": { "balance": "1606938044258990275541962092341162602522202993782792835301376" }, "cd2a3d9f938e13cd947ec05abc7fe734df8dd826": { "balance": "1606938044258990275541962092341162602522202993782792835301376" }, "6c386a4b26f73c802f34673f7248bb118f97424a": { "balance": "1606938044258990275541962092341162602522202993782792835301376" }, "e4157b34ea9615cfbde6b4fda419828124b70c78": { "balance": "1606938044258990275541962092341162602522202993782792835301376" }, "0000000000000000000000000000000000000001": { "balance": "1" }, "0000000000000000000000000000000000000002": { "balance": "1" }, "0000000000000000000000000000000000000003": { "balance": "1" }, "0000000000000000000000000000000000000004": { "balance": "1" } } }
將您想要的餘額分配給地址,但首先確保您已為其生成私鑰,否則您將無法使用餘額。
初始化私有測試網路執行:
mkdir myTestNet geth --datadir myTestNet init myGenBlock.json
接下來,只要您想使用它,只需通過添加參數將geth指向目錄:
--datadir myTestNet
獲得乙太幣有兩種方式:
- 通過創世文件預分配
- 礦業
Genesis 文件: 這可以使用
alloc
genesis 文件中的欄位來完成。
- 首先創建一個創世文件
- 使用創建帳戶
geth --datadir path/to/directory/ account new
- 如@Sebi 所述,將乙太幣分配給該帳戶
- 現在使用這個創世文件 (
init
) 啟動節點,--datadir
並且一個唯一的--networkid
礦業:
- 啟動節點並使用
geth --datadir path/to/directory/ account new
或創建帳戶後personal.newAccount("<password>").
miner.start(1)
使用where 1 = no從此節點開始探勘。採礦執行緒- 現在,所有這些挖礦獎勵都將分配到 coinbase 賬戶
- 然後你可以將這個乙太幣轉移到其他賬戶