以太坊客户端Geth命令用法-参数详解
东阿制造
发表于 2022-11-4 23:30:22
102
0
0
熟悉Geth可以让我们有更好的效率,大家可收藏起来作为Geth命令用法手册。 本文主要是对geth help的翻译,基于最新的geth 1.7.3-stable版本。
命令用法8 P+ |6 O4 d5 U* e. J, P
7 |& G( `( c. p# z. x& ?
geth [选项] 命令 [命令选项] [参数…]
版本:% b5 Q4 ?2 e0 ^3 _3 B% H3 \
: A5 ?- }( h' {4 s& K! V! k
1.7.3-stable8 _% l/ V) W: n* C. i% C
4 W$ Z1 i2 O$ _' R; ^
命令:! R9 S$ f$ e& n" w3 k3 f: L/ z
account 管理账户. B$ V; D8 R- n& [
attach 启动交互式JavaScript环境(连接到节点)
& X6 O/ z' t+ P9 u9 G5 I* j, m
bug 上报bug Issues
\0 |& j% P8 C* A" ]6 r" ^
console 启动交互式JavaScript环境' n. G& q% i+ ^& o4 T6 N
( Q5 e* a" V2 r9 A" R" O$ }
copydb 从文件夹创建本地链8 a( {) e$ S" s+ y
dump Dump(分析)一个特定的块存储
- N1 p0 J6 b9 ^& h0 J! x, r
dumpconfig 显示配置值
export 导出区块链到文件. R. Z( W* F( N3 A6 X z/ C
8 M8 ]" ]& |6 [3 h* `. S2 o
import 导入一个区块链文件
init 启动并初始化一个新的创世纪块5 Z! a: Z# j1 v* ?$ n3 N# g0 M! v
. f5 I' a/ s$ F8 q2 _
js 执行指定的JavaScript文件(多个)8 p1 b$ G6 P1 d' s- }7 ^2 e6 N
license 显示许可信息
! c4 B3 A8 T) ]
makecache 生成ethash验证缓存(用于测试)1 ~" [& [ u$ c6 d- O* u
; F* H, R7 h6 W; x T2 }0 H
makedag 生成ethash 挖矿DAG(用于测试) g. n$ ~$ i4 V) @+ a+ |0 s
. {$ R, F6 w1 b6 q6 I2 f
monitor 监控和可视化节点指标
removedb 删除区块链和状态数据库1 D+ \# X" P3 }, Z
version 打印版本号
( [ b& u. ~* h0 \0 D- y7 C
wallet 管理Ethereum预售钱包
help,h 显示一个命令或帮助一个命令列表
/ l' w! d6 w! J0 n" X9 x! p
ETHEREUM选项:1 U; ^, p- g' b& c3 v) y
: _, o0 V/ {5 i' v/ r$ y% W
--config value TOML 配置文件. ^7 Y6 ~" U, Z+ w
$ V2 u7 H5 n4 w0 ], Y; \
--datadir “xxx” 数据库和keystore密钥的数据目录8 \ m" @" W- {
--keystore keystore存放目录(默认在datadir内)
--nousb 禁用监控和管理USB硬件钱包3 O6 W: k% h. E% _# `" j9 E
--networkid value 网络标识符(整型, 1=Frontier, 2=Morden (弃用), 3=Ropsten, 4=Rinkeby) (默认: 1) ^) W, }8 u2 r" |$ G/ j/ B
--testnet Ropsten网络:预先配置的POW(proof-of-work)测试网络' j7 t" ?5 X- t; I
--rinkeby Rinkeby网络: 预先配置的POA(proof-of-authority)测试网络
& ]8 }6 |/ Y1 y: p* R
--syncmode "fast" 同步模式 ("fast", "full", or "light")0 t" D* K8 O" Y8 ?0 ?( H5 ^
--ethstats value 上报ethstats service URL (nodename:secret@host:port), G! g. r6 n2 E- C
, u' g4 P# ?& I
--identity value 自定义节点名. \7 a: V! w9 K7 \5 W* E* j+ p
* t# {5 M4 l& u2 Y2 q) V
--lightserv value 允许LES请求时间最大百分比(0 – 90)(默认值:0)
% \0 N- t# `. L& U
--lightpeers value 最大LES client peers数量(默认值:20)- e( _. d1 [, s1 O
--lightkdf 在KDF强度消费时降低key-derivation RAM&CPU使用
开发者(模式)选项:
--dev 使用POA共识网络,默认预分配一个开发者账户并且会自动开启挖矿。
--dev.period value 开发者模式下挖矿周期 (0 = 仅在交易时) (默认: 0)
ETHASH 选项:
, y, r$ x( u4 s/ ]
--ethash.cachedir ethash验证缓存目录(默认 = datadir目录内)
--ethash.cachesinmem value 在内存保存的最近的ethash缓存个数 (每个缓存16MB ) (默认: 2)' u+ ~8 [. M `! |9 I$ o5 e& X1 a
. r# h( @, d$ `, x! F6 k" K' e
--ethash.cachesondisk value 在磁盘保存的最近的ethash缓存个数 (每个缓存16MB) (默认: 3)
--ethash.dagdir "" 存ethash DAGs目录 (默认 = 用户hom目录)! y7 p1 B) Y9 S X+ I. X. p3 n
$ r2 J: M6 O4 [ ?5 U v& H
--ethash.dagsinmem value 在内存保存的最近的ethash DAGs 个数 (每个1GB以上) (默认: 1)
7 I A# l: L: ^4 w
--ethash.dagsondisk value 在磁盘保存的最近的ethash DAGs 个数 (每个1GB以上) (默认: 2) w& a( x& E4 `
交易池选项:
' G; U& H) H. L: z& q' O
--txpool.nolocals 为本地提交交易禁用价格豁免
--txpool.journal value 本地交易的磁盘日志:用于节点重启 (默认: "transactions.rlp")
% t0 d, H2 n: f) ^& w$ w
--txpool.rejournal value 重新生成本地交易日志的时间间隔 (默认: 1小时)
--txpool.pricelimit value 加入交易池的最小的gas价格限制(默认: 1)6 I2 z, y/ Q* z5 B7 G$ |, ]
, Y4 b# y" S5 d, r4 N" I
--txpool.pricebump value 价格波动百分比(相对之前已有交易) (默认: 10)% t" |2 H$ v+ V* O" e: N
- F* @+ M' t) J! G6 }- o; }
--txpool.accountslots value 每个帐户保证可执行的最少交易槽数量 (默认: 16)
--txpool.globalslots value 所有帐户可执行的最大交易槽数量 (默认: 4096)& ~6 D" Y& n! g- e- Z: Q
$ C* J' S8 \% p8 K' x( f
--txpool.accountqueue value 每个帐户允许的最多非可执行交易槽数量 (默认: 64); A8 T1 I2 q- ^: e8 s
--txpool.globalqueue value 所有帐户非可执行交易最大槽数量 (默认: 1024)& s, a6 l' x# e0 t6 L8 O
; B# ]9 P! i4 {0 A! n) O3 @0 z! O+ R: P
--txpool.lifetime value 非可执行交易最大入队时间(默认: 3小时)
性能调优的选项:
5 w7 a4 I/ x: i( m7 | Y& t
--cache value 分配给内部缓存的内存MB数量,缓存值(最低16 mb /数据库强制要求)(默认:128), i" ], p7 ?# K: s
--trie-cache-gens value 保持在内存中产生的trie node数量(默认:120)9 Q" [( C$ i1 P% \2 M* m0 M# T
帐户选项:
- N) S+ D U: T1 x' `8 u) m9 c
--unlock value 需解锁账户用逗号分隔% T' s2 C: H( Z: a) y" ]
--password value 用于非交互式密码输入的密码文件9 b8 S( q* l/ K" ]
API和控制台选项:$ @5 D- T- |' c) u
--rpc 启用HTTP-RPC服务器2 P- p6 { q9 `% B
; c8 l0 H4 }/ H3 Y8 I
--rpcaddr value HTTP-RPC服务器接口地址(默认值:“localhost”) k7 N- G- E- Z6 y* J3 d
3 v( @, r1 v- Q* x, y
--rpcport value HTTP-RPC服务器监听端口(默认值:8545)" x% ~* X! q: v" d9 [& A7 t
1 }2 H8 L1 |1 {* O* |9 l0 F: n; J
--rpcapi value 基于HTTP-RPC接口提供的API8 S9 v0 v0 G- W d% ~* n
7 ~8 l1 ] y5 |" f
--ws 启用WS-RPC服务器
--wsaddr value WS-RPC服务器监听接口地址(默认值:“localhost”)
--wsport value WS-RPC服务器监听端口(默认值:8546)
& J8 Y9 \# f4 b2 H% ]4 N: [
--wsapi value 基于WS-RPC的接口提供的API
8 p; s1 X% C9 [3 j1 X+ @
--wsorigins value websockets请求允许的源
--ipcdisable 禁用IPC-RPC服务器
--ipcpath 包含在datadir里的IPC socket/pipe文件名(转义过的显式路径)
--rpccorsdomain value 允许跨域请求的域名列表(逗号分隔)(浏览器强制)+ v! z8 L# S5 S M: N
9 _1 `- l) e [: [/ M: u5 o
--jspath loadScript JavaScript加载脚本的根路径(默认值:“.”)$ b" B% L/ a. e3 f7 E) l3 C. K n
--exec value 执行JavaScript语句(只能结合console/attach使用)
( k* L4 B' x1 `0 E A( M s
--preload value 预加载到控制台的JavaScript文件列表(逗号分隔)' ] g$ ^2 L, h2 d% R6 y
s, |+ J' h0 x1 r+ _( S1 L
网络选项:, {5 N0 ~: s( x9 r! s
--bootnodes value 用于P2P发现引导的enode urls(逗号分隔)(对于light servers用v4+v5代替)+ ~% j4 P6 N0 f1 S. y4 A
" F5 z0 [ r {) p. ~6 g& V
--bootnodesv4 value 用于P2P v4发现引导的enode urls(逗号分隔) (light server, 全节点)
--bootnodesv5 value 用于P2P v5发现引导的enode urls(逗号分隔) (light server, 轻节点), u: J% s( p1 Z$ {3 X0 [
--port value 网卡监听端口(默认值:30303)
8 B1 d7 |7 S; c! Z# H
--maxpeers value 最大的网络节点数量(如果设置为0,网络将被禁用)(默认值:25)! G% f- V" `( T( d
--maxpendpeers value 最大尝试连接的数量(如果设置为0,则将使用默认值)(默认值:0), P2 S1 |+ L: q- x. `( X
" e" \# e2 b Q6 L0 U, t) Z
--nat value NAT端口映射机制 (any|none|upnp|pmp|extip:[I]) (默认: “any”)% B8 M7 w- e& O# p
: \( { s8 ^& ^. d/ V
--nodiscover 禁用节点发现机制(手动添加节点)
--v5disc 启用实验性的RLPx V5(Topic发现)机制# B# c( e. c, ?' w) ^8 P
--nodekey value P2P节点密钥文件
--nodekeyhex value 十六进制的P2P节点密钥(用于测试)# y) I: `! }( d! y X% [) ~
矿工选项:
3 p- r) i6 }5 @: _8 v8 B
--mine 打开挖矿; C6 T1 a. @) g ]# T$ S1 [
--minerthreads value 挖矿使用的CPU线程数量(默认值:8)
9 ]0 Z& g/ T2 x$ j5 g H
--etherbase value 挖矿奖励地址(默认=第一个创建的帐户)(默认值:“0”)
--targetgaslimit value 目标gas限制:设置最低gas限制(低于这个不会被挖?) (默认值:“4712388”)+ x: |. n2 l- y8 ~; V0 s
--gasprice value 挖矿接受交易的最低gas价格5 K! Z$ W, |* t" L* s1 ]! v% x% K
--extradata value 矿工设置的额外块数据(默认=client version). B8 O1 s, e# w% A6 ~+ `
5 K# o) B, m( q
GAS价格选项:; m$ F3 l& T+ b! m Z
--gpoblocks value 用于检查gas价格的最近块的个数 (默认: 10)
7 E; Z' u, U$ X$ l* M' d- k7 G
--gpopercentile value 建议gas价参考最近交易的gas价的百分位数,(默认: 50)) k! {' c8 b' O! X0 c
虚拟机的选项:6 o. Z; ?$ W8 C) W: Z! b
--vmdebug 记录VM及合约调试信息
# U2 \$ A+ t/ v/ G, q
日志和调试选项:
--metrics 启用metrics收集和报告
--fakepow 禁用proof-of-work验证8 F8 i3 a2 {" p& I
0 j) K" n5 s. B9 Y# J. E5 n
--verbosity value 日志详细度:0=silent, 1=error, 2=warn, 3=info, 4=debug, 5=detail (default: 3)
/ U" X: l# i6 O/ R
--vmodule value 每个模块详细度:以 =的逗号分隔列表 (比如 eth/*=6,p2p=5)9 _! _8 @- f( m' \
--backtrace value 请求特定日志记录堆栈跟踪 (比如 “block.go:271”)7 M# H$ @: k h8 N2 m
--debug 突出显示调用位置日志(文件名及行号)
--pprof 启用pprof HTTP服务器
--pprofaddr value pprof HTTP服务器监听接口(默认值:127.0.0.1)& f3 b/ N' K9 h0 K& D3 I
8 D l* I! x( F+ c' ?7 d1 b
--pprofport value pprof HTTP服务器监听端口(默认值:6060)
7 ]! y( C" p) q
--memprofilerate value 按指定频率打开memory profiling (默认:524288)
) y# [' r0 ?5 ?) t3 ~# v
--blockprofilerate value 按指定频率打开block profiling (默认值:0)* t' C9 J+ C# A! W* e7 s2 E6 N
--cpuprofile value 将CPU profile写入指定文件
2 h- ~: b0 q5 ]- x# ?; k
--trace value 将execution trace写入指定文件
* ]5 m. X% Z6 S! B! V% }
WHISPER实验选项:3 H% h8 K: X6 n6 }& P
--shh 启用Whisper2 {4 b0 t! J1 g0 K; D; x$ |
# L7 @' z+ H9 g2 v+ K7 H% H) Y
--shh.maxmessagesize value 可接受的最大的消息大小 (默认值: 1048576)% k; {% N9 |5 n9 o5 m
0 l2 d: n& s9 Q: j4 `
--shh.pow value 可接受的最小的POW (默认值: 0.2)( k+ v8 q- F$ j8 Q+ i3 E. R
/ Q+ b: u4 F7 |0 U1 C, L
弃用选项:
--fast 开启快速同步
" r K, m+ r) c3 |, y$ p7 B$ v
--light 启用轻客户端模式& P9 g, u# ]4 c1 ^) k8 c! j
其他选项:/ }) h3 V* w9 {4 _- U6 |/ @
9 c1 |$ F$ L( c' W; k$ |; ~$ o1 t
–help, -h 显示帮助
成为第一个吐槽的人