在上一篇文章(區塊鏈(一) - 建立以太坊私有鏈)中,我們成功建立了一個私有鏈環境。現在,我們要快速地啟動這個私有鏈。

啟動私有鏈

私有鏈的啟動需要透過指令執行,以下是我使用的簡單指令,你可以根據需要進行修改。

$ geth --identity "TestNode" --networkid 95518 --port "30303" --nodiscover console

Fig. 1. start ethereum.
Fig. 1. start ethereum.

你可以先查看當前的區塊數量,由於我們是透過創世區塊來建立此鏈的,所以當前區塊數量應為 0。

web3.eth.blockNumber

Fig. 2. check blockNumber.
Fig. 2. check blockNumber.

查看帳戶餘額

在進行挖礦之前,先檢查一下錢包中有多少虛擬貨幣。

如果你還沒有虛擬錢包,可以使用 Ethereum 提供的 API 來生成一個。這個錢包相關的檔案會放在同一個資料夾中,這樣你以後就可以在不同平台上使用這個錢包。請注意保存好包含私鑰的檔案,一旦丟失,將無法找回!

account = "0x673b06829873d33b6fe13305ae472a6884d7e752"
eth.getBalance(account)

Fig. 3. get balance.
Fig. 3. get balance.

挖礦

只有在以太坊私有鏈中擁有錢包,我們才能進行挖礦,因為挖出的虛擬貨幣需要一個錢包地址來儲存。

如果你創建了多個錢包,可以使用指令查看本機端當前有多少個虛擬錢包。

web3.eth.accounts

Fig. 4. eth account.
Fig. 4. eth account.

既然我們知道當前區塊數為 0,並且已經創建了錢包,接下來就可以進行挖礦了。

你可以在挖礦的指令中設定挖礦次數,當達到指定次數後,它會自動停止。

miner.start(); admin.sleepBlocks(1); miner.stop();

第一次執行挖礦時,它會執行到進度條達到 100% 後停止。

Fig. 5. genearting DAG.
Fig. 5. genearting DAG.

完成挖礦後,讓我們檢查一下區塊數量,因為我們只進行了一次挖礦,所以區塊數量應為 1。

web3.eth.blockNumber

Fig. 6. get blochNumber again.
Fig. 6. get blochNumber again.

再來,檢查一下錢包中目前有多少虛擬貨幣。

eth.getBalance(web3.eth.accounts[0])

Fig. 7. get balance again.
Fig. 7. get balance again.

請不要擔心後面那麼多個 0,這是由於單位不同。你可以使用 web3.fromWei() 指令將 wei 轉換為 ether。

eth.getBalacne(web3.eth.accounts[0])

Fig. 8. get eth.
Fig. 8. get eth.