以太坊客户端Geth命令用法-参数详解
东阿制造
发表于 2022-11-4 23:30:22
94
0
0
熟悉Geth可以让我们有更好的效率,大家可收藏起来作为Geth命令用法手册。 本文主要是对geth help的翻译,基于最新的geth 1.7.3-stable版本。
! o1 L3 u% D0 X/ E- {3 t
命令用法0 k* d0 z# ]/ O' p- z! i6 o' A/ x
geth [选项] 命令 [命令选项] [参数…]
6 z6 r- P9 i% b7 Z8 t# L
版本:
5 w( X* r6 e6 M. I! @
1.7.3-stable! Q& v. q9 R; \# e" ^" ?' c( ~
命令:. b) d# `/ W! }( e
: s8 A- x( _$ s1 ~) v4 v, F
account 管理账户
0 V! z W# a! a$ E
attach 启动交互式JavaScript环境(连接到节点)
1 ]) S- k. N) N: G& T [
bug 上报bug Issues
console 启动交互式JavaScript环境
copydb 从文件夹创建本地链& \( M- ~; n+ W6 ~ m8 M
+ d c: T6 _8 h- M1 Z
dump Dump(分析)一个特定的块存储4 R! @2 c" P9 Q) s; U0 E3 J
4 V9 o9 t/ V7 x6 t
dumpconfig 显示配置值+ c# `+ W$ t3 F0 ^
5 b2 t1 n- J: N$ X3 f K
export 导出区块链到文件$ e8 [0 s% d- f, s' M6 f
+ x0 v. K/ \3 Q* e- g* u( J! N* C. K
import 导入一个区块链文件" R M" r- Y6 q
: v5 |3 ?; D3 ?( M/ s7 e
init 启动并初始化一个新的创世纪块0 o2 `9 L( L$ }& L' c0 ~) ]7 q
js 执行指定的JavaScript文件(多个)
license 显示许可信息
# s1 f L# _0 @5 o. N5 E
makecache 生成ethash验证缓存(用于测试) `- s, v6 T3 Y1 D* G
+ s' Z) K) p& T* O: {; s2 ]. J
makedag 生成ethash 挖矿DAG(用于测试)
monitor 监控和可视化节点指标
9 N9 C# E# c. ]1 \2 m
removedb 删除区块链和状态数据库8 b9 q! H. ]# ]6 c# P
version 打印版本号- h9 a4 ]! E# L) V- u- J
5 G6 N# F) _ p6 i
wallet 管理Ethereum预售钱包- ~8 g |! C% |6 w7 m( i
% F3 K+ W& D! R( v+ W2 b
help,h 显示一个命令或帮助一个命令列表
* W! l; j( S3 G6 S. `. r
ETHEREUM选项:
--config value TOML 配置文件
--datadir “xxx” 数据库和keystore密钥的数据目录4 i( Q9 D( i% u" z
--keystore keystore存放目录(默认在datadir内)
--nousb 禁用监控和管理USB硬件钱包. x! @* E7 `/ w
1 W7 d5 L+ m. c) j, s _# A, C. C
--networkid value 网络标识符(整型, 1=Frontier, 2=Morden (弃用), 3=Ropsten, 4=Rinkeby) (默认: 1)
--testnet Ropsten网络:预先配置的POW(proof-of-work)测试网络9 R* }* M$ Y2 U; {
--rinkeby Rinkeby网络: 预先配置的POA(proof-of-authority)测试网络
Y J* g6 w) N2 [% R3 Z
--syncmode "fast" 同步模式 ("fast", "full", or "light")
8 @ z: c1 _$ u- l5 \2 C2 x5 S+ I$ q: T
--ethstats value 上报ethstats service URL (nodename:secret@host:port)
--identity value 自定义节点名. j- [! u6 T; f. x
--lightserv value 允许LES请求时间最大百分比(0 – 90)(默认值:0). k% x- r, q4 F8 u$ O6 m
7 i' B, {7 c9 o+ P
--lightpeers value 最大LES client peers数量(默认值:20)
--lightkdf 在KDF强度消费时降低key-derivation RAM&CPU使用& P3 G" I3 v% l/ y0 Q7 Q/ j
开发者(模式)选项:
--dev 使用POA共识网络,默认预分配一个开发者账户并且会自动开启挖矿。
8 P E4 \& O: @, i, f- g
--dev.period value 开发者模式下挖矿周期 (0 = 仅在交易时) (默认: 0)8 P! p8 r" Q' d, t6 \
ETHASH 选项:
+ Z% s V: m( G. R' P* ^7 C: W- K# I
--ethash.cachedir ethash验证缓存目录(默认 = datadir目录内)4 O0 `$ C7 z9 u7 e' j5 f( F j
--ethash.cachesinmem value 在内存保存的最近的ethash缓存个数 (每个缓存16MB ) (默认: 2)
--ethash.cachesondisk value 在磁盘保存的最近的ethash缓存个数 (每个缓存16MB) (默认: 3)
1 |! d* t/ q7 A. K* n, i" U
--ethash.dagdir "" 存ethash DAGs目录 (默认 = 用户hom目录)
4 y! z4 ?+ h; }2 t, l1 x
--ethash.dagsinmem value 在内存保存的最近的ethash DAGs 个数 (每个1GB以上) (默认: 1)" ~8 z6 R5 H* N' R! R% E
--ethash.dagsondisk value 在磁盘保存的最近的ethash DAGs 个数 (每个1GB以上) (默认: 2)% I o; J% F: u/ w9 u# j
交易池选项:
--txpool.nolocals 为本地提交交易禁用价格豁免
& r( Y" h* u' J) W3 m
--txpool.journal value 本地交易的磁盘日志:用于节点重启 (默认: "transactions.rlp")
--txpool.rejournal value 重新生成本地交易日志的时间间隔 (默认: 1小时)
--txpool.pricelimit value 加入交易池的最小的gas价格限制(默认: 1)) @2 d* q1 t# q8 a4 t: v$ x) ]' m
9 d5 D+ H! a1 |+ w
--txpool.pricebump value 价格波动百分比(相对之前已有交易) (默认: 10)- h. c; W& E5 x# H9 i, s+ H
6 p I. R" j4 y' z1 r
--txpool.accountslots value 每个帐户保证可执行的最少交易槽数量 (默认: 16)
4 l3 z8 }8 e* b2 Z( b" [! U
--txpool.globalslots value 所有帐户可执行的最大交易槽数量 (默认: 4096). Y1 ?; m6 i( y
--txpool.accountqueue value 每个帐户允许的最多非可执行交易槽数量 (默认: 64)8 K) H# w; [+ Z" d |
--txpool.globalqueue value 所有帐户非可执行交易最大槽数量 (默认: 1024)- Q3 p8 @5 U+ M
--txpool.lifetime value 非可执行交易最大入队时间(默认: 3小时)* ^2 |# O$ }' E
% [+ h7 m- @, S/ C6 R9 i
性能调优的选项:
--cache value 分配给内部缓存的内存MB数量,缓存值(最低16 mb /数据库强制要求)(默认:128)
--trie-cache-gens value 保持在内存中产生的trie node数量(默认:120)
帐户选项:% Y5 H' X2 g* x5 G. k* f4 y
& |$ c3 m0 S1 l- ^, `
--unlock value 需解锁账户用逗号分隔- @, R% j& ?+ |' ~2 J- C
# ~: [; @: x7 V% k- A/ c2 n3 X* X1 }, |
--password value 用于非交互式密码输入的密码文件
API和控制台选项:% M3 e- H$ g2 Q" _9 J2 |# E' g% N: s' R! ?
--rpc 启用HTTP-RPC服务器
--rpcaddr value HTTP-RPC服务器接口地址(默认值:“localhost”)
1 B( @: t! Z+ z. O t# |/ G
--rpcport value HTTP-RPC服务器监听端口(默认值:8545)
& ]$ s, n- B0 d& T. n
--rpcapi value 基于HTTP-RPC接口提供的API& z( Q& c. A7 f2 k% n: P0 \
--ws 启用WS-RPC服务器; r2 _2 ?& u7 d+ Z: O ~3 R
--wsaddr value WS-RPC服务器监听接口地址(默认值:“localhost”)
--wsport value WS-RPC服务器监听端口(默认值:8546); I, y3 d9 L1 w
--wsapi value 基于WS-RPC的接口提供的API
--wsorigins value websockets请求允许的源
--ipcdisable 禁用IPC-RPC服务器
--ipcpath 包含在datadir里的IPC socket/pipe文件名(转义过的显式路径): E. N% J9 ]5 q }5 f7 H# p
--rpccorsdomain value 允许跨域请求的域名列表(逗号分隔)(浏览器强制)
: R- t- o3 [8 v# }+ n) x
--jspath loadScript JavaScript加载脚本的根路径(默认值:“.”)
--exec value 执行JavaScript语句(只能结合console/attach使用)+ Z C( `! e2 D& W/ U. J
--preload value 预加载到控制台的JavaScript文件列表(逗号分隔)" v7 V) V" J- X' G6 @" r
网络选项:
--bootnodes value 用于P2P发现引导的enode urls(逗号分隔)(对于light servers用v4+v5代替)
) I3 ?& [2 @) P2 o' K
--bootnodesv4 value 用于P2P v4发现引导的enode urls(逗号分隔) (light server, 全节点)4 Q8 l, r1 y9 Z3 u" i; L. ]
--bootnodesv5 value 用于P2P v5发现引导的enode urls(逗号分隔) (light server, 轻节点)& l h: z, D- t/ b$ M
( ?) L7 X. Z% q8 _6 @: m
--port value 网卡监听端口(默认值:30303)% H( s+ f+ h! I2 D
--maxpeers value 最大的网络节点数量(如果设置为0,网络将被禁用)(默认值:25)
--maxpendpeers value 最大尝试连接的数量(如果设置为0,则将使用默认值)(默认值:0)
--nat value NAT端口映射机制 (any|none|upnp|pmp|extip:[I]) (默认: “any”)
. H- P: v1 T C9 [
--nodiscover 禁用节点发现机制(手动添加节点)" A6 b& `' n) o) y- c
--v5disc 启用实验性的RLPx V5(Topic发现)机制
' N: x' N: i, U! l' C
--nodekey value P2P节点密钥文件1 Z; G0 L# u! Y a. {: Q* C
--nodekeyhex value 十六进制的P2P节点密钥(用于测试)
矿工选项:' P, {7 Q& _& W& o A
) }0 z2 K$ k1 r3 a1 k, ?2 o
--mine 打开挖矿' C/ ^' b4 r0 X+ z; l
& t2 l5 l) s3 o w( {2 ~* a h
--minerthreads value 挖矿使用的CPU线程数量(默认值:8)
/ }4 I y' }/ D! x7 E0 c( ]& a5 F/ V
--etherbase value 挖矿奖励地址(默认=第一个创建的帐户)(默认值:“0”)1 ^' m7 d. F+ U5 w# r, J5 v
--targetgaslimit value 目标gas限制:设置最低gas限制(低于这个不会被挖?) (默认值:“4712388”)
--gasprice value 挖矿接受交易的最低gas价格9 M; Y$ F7 k: F
--extradata value 矿工设置的额外块数据(默认=client version)
GAS价格选项:0 Z3 H8 S$ g( _4 K' @7 c
0 W( c( T6 r& u6 f
--gpoblocks value 用于检查gas价格的最近块的个数 (默认: 10)
* F% V% K7 z# Y
--gpopercentile value 建议gas价参考最近交易的gas价的百分位数,(默认: 50)9 a; d6 b/ b; l+ ~: K! w
虚拟机的选项:
9 B u+ F |- [: Y
--vmdebug 记录VM及合约调试信息
日志和调试选项:0 N' u0 R7 o; y5 C! H' N
$ f# K2 n R; }, H1 v" e1 R
--metrics 启用metrics收集和报告2 A4 K& N5 z0 ?% h# Y- @. F
--fakepow 禁用proof-of-work验证6 L9 D; k J" ?
--verbosity value 日志详细度:0=silent, 1=error, 2=warn, 3=info, 4=debug, 5=detail (default: 3)9 K7 ~/ [% f( V7 @" |% g' X
--vmodule value 每个模块详细度:以 =的逗号分隔列表 (比如 eth/*=6,p2p=5)
--backtrace value 请求特定日志记录堆栈跟踪 (比如 “block.go:271”)
w8 D% v0 W2 V% P( X( W0 }
--debug 突出显示调用位置日志(文件名及行号)
--pprof 启用pprof HTTP服务器9 l& [/ C" w6 h# p/ S7 E4 S: i
--pprofaddr value pprof HTTP服务器监听接口(默认值:127.0.0.1)
--pprofport value pprof HTTP服务器监听端口(默认值:6060)5 N% l! s; \+ r$ o0 s% ~! O
--memprofilerate value 按指定频率打开memory profiling (默认:524288)
; Q) F1 W$ C# y" A
--blockprofilerate value 按指定频率打开block profiling (默认值:0)
--cpuprofile value 将CPU profile写入指定文件
4 R G8 I% _" b
--trace value 将execution trace写入指定文件
3 l- y1 @, a8 n! A1 s9 @6 Y3 L
WHISPER实验选项:9 t1 y" w$ W* C G! \0 ~
--shh 启用Whisper
--shh.maxmessagesize value 可接受的最大的消息大小 (默认值: 1048576), T2 e/ S( V1 S4 n3 d
/ M' }- V; c. [+ x5 s u. u
--shh.pow value 可接受的最小的POW (默认值: 0.2)' u' W/ t0 K2 H
- j7 r! F9 h6 L V7 n7 z3 l
弃用选项:
+ r {2 _9 N+ q1 X* e/ J, O
--fast 开启快速同步
# M! r' u; o4 g8 @! h* F: N1 A7 h
--light 启用轻客户端模式9 h# e+ n* I0 s2 P9 u
其他选项:1 k8 h4 F: G. r- O( D
–help, -h 显示帮助
成为第一个吐槽的人