【react+taro做一個商品分類的元件】版本1(我願稱之為最簡版本)
阿新 • • 發佈:2020-11-19
安裝Geth
通過PPA在Ubuntu上安裝
在基於Ubuntu的發行版上安裝go-ethereum的最簡單方法是使用內建的啟動板PPA(個人軟體包檔案)。我們提供的是包含了我們的穩定和開發版本的Ubuntu版本的單PPA倉庫trusty,xenial,zesty和artful。
要啟用我們的啟動板儲存庫,請執行:
sudo add-apt-repository -y ppa:ethereum/ethereum
然後安裝穩定版的go-ethereum:
sudo apt-get update sudo apt-get install ethereum
安裝golang
sudo apt-get installgolang
搭建私鏈
建立創世區塊檔案
{ "config": { "chainId": <arbitrary positive integer>, "homesteadBlock": 0, "eip150Block": 0, "eip155Block": 0, "eip158Block": 0, "byzantiumBlock": 0, "constantinopleBlock": 0, "petersburgBlock": 0, "istanbulBlock": 0 }, "alloc": {},"coinbase": "0x0000000000000000000000000000000000000000", "difficulty": "0x20000", "extraData": "", "gasLimit": "0x2fefd8", "nonce": "0x0000000000000042", "mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000", "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000", "timestamp": "0x00" }
啟動私鏈節點
下面命令的主體是geth console,表示啟動節點並進入互動式控制檯,–datadir選項指定使用data0作為資料目錄,–networkid選項後面跟一個數字,這裡是1108,表示指定這個私有鏈的網路id為1108。網路id在連線到其他節點的時候會用到,以太坊公網的網路id是1,為了不與公有鏈網路衝突,執行私有鏈節點的時候要指定自己的網路id
geth --datadir data0 --networkid 1108 console
執行上面的命令後,就啟動了區塊鏈節點並進入了Javascript Console:
這是一個互動式的Javascript執行環境,在這裡面可以執行Javascript程式碼,其中>是命令提示符。在這個環境裡也內建了一些用來操作以太坊的Javascript物件,可以直接使用這些物件。這些物件主要包括:
eth:包含一些跟操作區塊鏈相關的方法 net:包含以下檢視p2p網路狀態的方法 admin:包含一些與管理節點相關的方法 miner:包含啟動&停止挖礦的一些方法 personal:主要包含一些管理賬戶的方法 txpool:包含一些檢視交易記憶體池的方法 web3:包含了以上物件,還包含一些單位換算的方法
建立賬戶
賬戶預設會儲存在資料目錄的keystore資料夾中。
# 檢視賬戶 eth.accounts # 建立新賬戶 personal.newAccount('你的密碼1') # 可以建立多個賬戶 personal.newAccount('你的密碼2')
檢視賬戶餘額
eth.getBalance(eth.accounts[0]) eth.getBalance(eth.accounts[1])
啟動/停止挖礦
# 括號中的引數為挖礦的執行緒數,可以不設定,預設全力挖礦 miner.start(10) # 第一次啟動挖礦會先生成挖礦所需的DAG檔案,這個過程有點慢,等進度達到100%後,就會開始挖礦,此時螢幕會被挖礦資訊刷屏。 # 停止挖礦 miner.stop() # 輸入的字元會被挖礦刷屏資訊沖掉,沒有關係,只要輸入完整的miner.stop()之後回車,即可停止挖礦
礦工的賬戶,叫做coinbase,預設情況下coinbase是本地賬戶中的第一個賬戶
# 檢視賬戶 eth.coinbase # 修改賬戶 miner.setEtherbase(eth.accounts[1])