第六課 以太坊客戶端Geth命令用法-引數詳解

筆名輝哥發表於2018-11-15

第六課 以太坊客戶端Geth命令用法-引數詳解

Geth在以太坊智慧合約開發中最常用的工具(必備開發工具),一個多用途的命令列工具。 熟悉Geth可以讓我們有更好的效率,大家可收藏起來作為Geth命令用法手冊。 本文主要是對geth help的翻譯,基於最新的geth 1.7.3-stable版本。

命令用法

geth [選項] 命令 [命令選項] [引數…]

複製程式碼

版本:

1.7.3-stable

複製程式碼

命令:

account    管理賬戶
attach     啟動互動式JavaScript環境(連線到節點)
bug        上報bug Issues
console    啟動互動式JavaScript環境
copydb     從資料夾建立本地鏈
dump       Dump(分析)一個特定的塊儲存
dumpconfig 顯示配置值
export     匯出區塊鏈到檔案
import     匯入一個區塊鏈檔案
init       啟動並初始化一個新的創世紀塊
js         執行指定的JavaScript檔案(多個)
license    顯示許可資訊
makecache  生成ethash驗證快取(用於測試)
makedag    生成ethash 挖礦DAG(用於測試)
monitor    監控和視覺化節點指標
removedb   刪除區塊鏈和狀態資料庫
version    列印版本號
wallet     管理Ethereum預售錢包
help,h     顯示一個命令或幫助一個命令列表

複製程式碼

ETHEREUM選項:

--config value          TOML 配置檔案
--datadir “xxx”         資料庫和keystore金鑰的資料目錄
--keystore              keystore存放目錄(預設在datadir內)
--nousb                 禁用監控和管理USB硬體錢包
--networkid value       網路識別符號(整型, 1=Frontier, 2=Morden (棄用), 3=Ropsten, 4=Rinkeby) (預設: 1)
--testnet               Ropsten網路:預先配置的POW(proof-of-work)測試網路
--rinkeby               Rinkeby網路: 預先配置的POA(proof-of-authority)測試網路
--syncmode "fast"       同步模式 ("fast", "full", or "light")
--ethstats value        上報ethstats service  URL (nodename:secret@host:port)
--identity value        自定義節點名
--lightserv value       允許LES請求時間最大百分比(0 – 90)(預設值:0) 
--lightpeers value      最大LES client peers數量(預設值:20)
--lightkdf              在KDF強度消費時降低key-derivation RAM&CPU使用

複製程式碼

開發者(模式)選項:

--dev               使用POA共識網路,預設預分配一個開發者賬戶並且會自動開啟挖礦。
--dev.period value  開發者模式下挖礦週期 (0 = 僅在交易時) (預設: 0)

複製程式碼

ETHASH 選項:

--ethash.cachedir                        ethash驗證快取目錄(預設 = datadir目錄內)
--ethash.cachesinmem value               在記憶體儲存的最近的ethash快取個數  (每個快取16MB ) (預設: 2)
--ethash.cachesondisk value              在磁碟儲存的最近的ethash快取個數 (每個快取16MB) (預設: 3)
--ethash.dagdir ""                       存ethash DAGs目錄 (預設 = 使用者hom目錄)
--ethash.dagsinmem value                 在記憶體儲存的最近的ethash DAGs 個數 (每個1GB以上) (預設: 1)
--ethash.dagsondisk value                在磁碟儲存的最近的ethash DAGs 個數 (每個1GB以上) (預設: 2)

複製程式碼

交易池選項:

--txpool.nolocals            為本地提交交易禁用價格豁免
--txpool.journal value       本地交易的磁碟日誌:用於節點重啟 (預設: "transactions.rlp")
--txpool.rejournal value     重新生成本地交易日誌的時間間隔 (預設: 1小時)
--txpool.pricelimit value    加入交易池的最小的gas價格限制(預設: 1)
--txpool.pricebump value     價格波動百分比(相對之前已有交易) (預設: 10)
--txpool.accountslots value  每個帳戶保證可執行的最少交易槽數量  (預設: 16)
--txpool.globalslots value   所有帳戶可執行的最大交易槽數量 (預設: 4096)
--txpool.accountqueue value  每個帳戶允許的最多非可執行交易槽數量 (預設: 64)
--txpool.globalqueue value   所有帳戶非可執行交易最大槽數量  (預設: 1024)
--txpool.lifetime value      非可執行交易最大入隊時間(預設: 3小時)

複製程式碼

效能調優的選項:

--cache value                分配給內部快取的記憶體MB數量,快取值(最低16 mb /資料庫強制要求)(預設:128)
--trie-cache-gens value      保持在記憶體中產生的trie node數量(預設:120)

複製程式碼

帳戶選項:

--unlock value              需解鎖賬戶用逗號分隔
--password value            用於非互動式密碼輸入的密碼檔案

複製程式碼

API和控制檯選項:

--rpc                       啟用HTTP-RPC伺服器
--rpcaddr value             HTTP-RPC伺服器介面地址(預設值:“localhost”)
--rpcport value             HTTP-RPC伺服器監聽埠(預設值:8545)
--rpcapi value              基於HTTP-RPC介面提供的API
--ws                        啟用WS-RPC伺服器
--wsaddr value              WS-RPC伺服器監聽介面地址(預設值:“localhost”)
--wsport value              WS-RPC伺服器監聽埠(預設值:8546)
--wsapi  value              基於WS-RPC的介面提供的API
--wsorigins value           websockets請求允許的源
--ipcdisable                禁用IPC-RPC伺服器
--ipcpath                   包含在datadir裡的IPC socket/pipe檔名(轉義過的顯式路徑)
--rpccorsdomain value       允許跨域請求的域名列表(逗號分隔)(瀏覽器強制)
--jspath loadScript         JavaScript載入指令碼的根路徑(預設值:“.”)
--exec value                執行JavaScript語句(只能結合console/attach使用)
--preload value             預載入到控制檯的JavaScript檔案列表(逗號分隔)

複製程式碼

網路選項:

--bootnodes value    用於P2P發現引導的enode urls(逗號分隔)(對於light servers用v4+v5代替)
--bootnodesv4 value  用於P2P v4發現引導的enode urls(逗號分隔) (light server, 全節點)
--bootnodesv5 value  用於P2P v5發現引導的enode urls(逗號分隔) (light server, 輕節點)
--port value         網路卡監聽埠(預設值:30303)
--maxpeers value     最大的網路節點數量(如果設定為0,網路將被禁用)(預設值:25)
--maxpendpeers value    最大嘗試連線的數量(如果設定為0,則將使用預設值)(預設值:0)
--nat value             NAT埠對映機制 (any|none|upnp|pmp|extip:<IP>) (預設: “any”)
--nodiscover            禁用節點發現機制(手動新增節點)
--v5disc                啟用實驗性的RLPx V5(Topic發現)機制
--nodekey value         P2P節點金鑰檔案
--nodekeyhex value      十六進位制的P2P節點金鑰(用於測試)

複製程式碼

礦工選項:

--mine                  開啟挖礦
--minerthreads value    挖礦使用的CPU執行緒數量(預設值:8)
--etherbase value       挖礦獎勵地址(預設=第一個建立的帳戶)(預設值:“0”)
--targetgaslimit value  目標gas限制:設定最低gas限制(低於這個不會被挖?) (預設值:“4712388”)
--gasprice value        挖礦接受交易的最低gas價格
--extradata value       礦工設定的額外塊資料(預設=client version)

複製程式碼

GAS價格選項:

--gpoblocks value      用於檢查gas價格的最近塊的個數  (預設: 10)
--gpopercentile value  建議gas價參考最近交易的gas價的百分位數,(預設: 50)

複製程式碼

虛擬機器的選項:

--vmdebug        記錄VM及合約除錯資訊

複製程式碼

日誌和除錯選項:

--metrics            啟用metrics收集和報告
--fakepow            禁用proof-of-work驗證
--verbosity value    日誌詳細度:0=silent, 1=error, 2=warn, 3=info, 4=debug, 5=detail (default: 3)
--vmodule value      每個模組詳細度:以 <pattern>=<level>的逗號分隔列表 (比如 eth/*=6,p2p=5)
--backtrace value    請求特定日誌記錄堆疊跟蹤 (比如 “block.go:271”)
--debug                     突出顯示呼叫位置日誌(檔名及行號)
--pprof                     啟用pprof HTTP伺服器
--pprofaddr value           pprof HTTP伺服器監聽介面(預設值:127.0.0.1)
--pprofport value           pprof HTTP伺服器監聽埠(預設值:6060)
--memprofilerate value      按指定頻率開啟memory profiling    (預設:524288)
--blockprofilerate value    按指定頻率開啟block profiling    (預設值:0)
--cpuprofile value          將CPU profile寫入指定檔案
--trace value               將execution trace寫入指定檔案

複製程式碼

WHISPER實驗選項:

--shh                        啟用Whisper
--shh.maxmessagesize value   可接受的最大的訊息大小 (預設值: 1048576)
--shh.pow value              可接受的最小的POW (預設值: 0.2)

複製程式碼

棄用選項:

--fast     開啟快速同步
--light    啟用輕客戶端模式

複製程式碼

其他選項:

help, -h    顯示幫助

複製程式碼

版權:

Copyright 2013-2017 The go-ethereum Authors

複製程式碼

翻譯說明

有些引數翻譯可能有不準確的地方,請大家指正。 原文會盡量隨geth升級保持更新,原作者連結:learnblockchain.cn/2017/11/29/… ##英文原始說明 github.com/ethereum/go… ##GETH介面說明 github.com/ethereum/go…

相關文章