以太坊客户端Geth命令用法-参数详解
东阿制造
发表于 2022-11-4 23:30:22
137
0
0
熟悉Geth可以让我们有更好的效率,大家可收藏起来作为Geth命令用法手册。 本文主要是对geth help的翻译,基于最新的geth 1.7.3-stable版本。
命令用法( l; `) Q8 ?7 ?. j+ V4 S* p- g
& U# D( l2 O3 {8 J
geth [选项] 命令 [命令选项] [参数…]
版本:
1.7.3-stable; U- L6 a" A ~. c
0 R5 y2 G$ @# M1 G
命令: {9 o S2 E4 t9 R
0 ~4 P- j( g% }( P- p9 @
account 管理账户$ H' B' M; F- F z2 `8 K
attach 启动交互式JavaScript环境(连接到节点)
bug 上报bug Issues" Y, \, \7 @4 o
5 O- x) K# o3 f$ }0 E z R# J
console 启动交互式JavaScript环境
copydb 从文件夹创建本地链
7 c* [- x; x' Z. f! w
dump Dump(分析)一个特定的块存储/ n" _! [: _) N
: x; j" @6 d- V1 \$ |" d. K
dumpconfig 显示配置值) v, n, l0 e, f
7 G7 r4 t9 V+ |$ u Q
export 导出区块链到文件' G# |) R+ O; ]+ ~2 ^/ V. Y
{7 B! v" [5 _, }6 z$ ?* R. x6 F
import 导入一个区块链文件
init 启动并初始化一个新的创世纪块
js 执行指定的JavaScript文件(多个); R( |) ^8 _! }( m! @. i# [
9 m/ O: ~1 [# O2 L8 W6 P
license 显示许可信息, i" q3 Q2 ], m/ [
makecache 生成ethash验证缓存(用于测试)
makedag 生成ethash 挖矿DAG(用于测试)
0 D. Z/ S8 p4 [& T8 m7 X2 e9 F
monitor 监控和可视化节点指标
removedb 删除区块链和状态数据库: V. k" N0 v0 Y; ]2 ], Z# P
version 打印版本号
wallet 管理Ethereum预售钱包3 d) \6 f. {; L; K) a
help,h 显示一个命令或帮助一个命令列表# k9 g7 ^) c- H# c, `
ETHEREUM选项:+ J, ^+ @3 ^8 f I* a
--config value TOML 配置文件8 t4 f, s1 _% t" |9 T+ Q
--datadir “xxx” 数据库和keystore密钥的数据目录# S# l% ` m% W9 o+ Q
. R) j* F4 Z: }3 H7 q
--keystore keystore存放目录(默认在datadir内)
% ?/ q9 O, \# E! t
--nousb 禁用监控和管理USB硬件钱包
0 b* c( Q4 b' i8 U
--networkid value 网络标识符(整型, 1=Frontier, 2=Morden (弃用), 3=Ropsten, 4=Rinkeby) (默认: 1) @0 a$ J5 ^% a# I
1 C- d9 L3 f- m9 O
--testnet Ropsten网络:预先配置的POW(proof-of-work)测试网络$ [) P: @* x5 P5 t
--rinkeby Rinkeby网络: 预先配置的POA(proof-of-authority)测试网络+ C% j5 o( U5 ^, w0 F
" o, |: @$ |6 H8 X Y) ?" o! S. f
--syncmode "fast" 同步模式 ("fast", "full", or "light")! b+ l! H# O& m- [5 P- `
) k9 E$ W0 M9 I- \( i
--ethstats value 上报ethstats service URL (nodename:secret@host:port)
--identity value 自定义节点名! n$ ]1 ]2 P4 W3 w8 n* H/ b. ^
$ ^% z w4 V* f& n( x
--lightserv value 允许LES请求时间最大百分比(0 – 90)(默认值:0)# k: Z1 _( U) P( S8 E: _1 Q1 c
1 f) u) n* B" S. F* I
--lightpeers value 最大LES client peers数量(默认值:20)
--lightkdf 在KDF强度消费时降低key-derivation RAM&CPU使用
开发者(模式)选项:8 N/ K2 S! {9 y: v6 c, z
5 D, ~3 B/ `7 w/ K) J
--dev 使用POA共识网络,默认预分配一个开发者账户并且会自动开启挖矿。
--dev.period value 开发者模式下挖矿周期 (0 = 仅在交易时) (默认: 0)# B* `5 B: e' a4 ~ _2 D, E1 z
ETHASH 选项:: Z1 _6 P9 _$ J1 {+ g
) I/ o' _7 V. x: d
--ethash.cachedir ethash验证缓存目录(默认 = datadir目录内)
6 X7 i7 {+ Z, K( M8 s7 p
--ethash.cachesinmem value 在内存保存的最近的ethash缓存个数 (每个缓存16MB ) (默认: 2)
--ethash.cachesondisk value 在磁盘保存的最近的ethash缓存个数 (每个缓存16MB) (默认: 3)
--ethash.dagdir "" 存ethash DAGs目录 (默认 = 用户hom目录)
--ethash.dagsinmem value 在内存保存的最近的ethash DAGs 个数 (每个1GB以上) (默认: 1); a3 C0 n: D+ X7 A! e% ^& i
--ethash.dagsondisk value 在磁盘保存的最近的ethash DAGs 个数 (每个1GB以上) (默认: 2)
交易池选项:! G9 [9 Y6 L, \4 Y' @/ y
--txpool.nolocals 为本地提交交易禁用价格豁免1 Z4 M0 l/ o/ X8 y
--txpool.journal value 本地交易的磁盘日志:用于节点重启 (默认: "transactions.rlp")! d1 B7 x) g/ `' F' w3 K# l% G& r
--txpool.rejournal value 重新生成本地交易日志的时间间隔 (默认: 1小时)7 \# E- ~6 z7 t+ Q& t% K D# j4 W5 E" l
--txpool.pricelimit value 加入交易池的最小的gas价格限制(默认: 1)' R- x$ c4 l8 C" J) u
--txpool.pricebump value 价格波动百分比(相对之前已有交易) (默认: 10)7 i* e; w: _0 x5 |- R5 |
, ]$ Y9 J; {* b/ @9 h! B. y8 ^+ w, G
--txpool.accountslots value 每个帐户保证可执行的最少交易槽数量 (默认: 16)
--txpool.globalslots value 所有帐户可执行的最大交易槽数量 (默认: 4096)' ~6 m0 a) l# `
--txpool.accountqueue value 每个帐户允许的最多非可执行交易槽数量 (默认: 64)
% l$ O, K3 C0 ?' Q0 w/ x' j3 l
--txpool.globalqueue value 所有帐户非可执行交易最大槽数量 (默认: 1024)
7 J- s5 l+ e# M9 L S' S
--txpool.lifetime value 非可执行交易最大入队时间(默认: 3小时)' E. u. r+ N! ]
; N7 w6 _* ]) k# K# V7 O
性能调优的选项:
9 h7 x% X& d" w8 Q) K* V
--cache value 分配给内部缓存的内存MB数量,缓存值(最低16 mb /数据库强制要求)(默认:128)5 D3 c3 g o+ f; r. T2 A7 h
--trie-cache-gens value 保持在内存中产生的trie node数量(默认:120)
5 J" t3 h( G+ V" V6 Z! T2 I+ X
帐户选项:) j; m4 N( A+ h1 K( w' i% W% W
! ]" ?, q6 h5 Y q- Z' v- ^
--unlock value 需解锁账户用逗号分隔
--password value 用于非交互式密码输入的密码文件
a3 f# }( J5 J: Y9 ~0 f
API和控制台选项: {9 E8 Y+ H. \/ L
1 x Z; @7 l1 c) n G& N6 D9 x
--rpc 启用HTTP-RPC服务器
/ |, w+ ]" z! x3 E8 b
--rpcaddr value HTTP-RPC服务器接口地址(默认值:“localhost”) n) K5 ^) n0 g5 C* U: H
--rpcport value HTTP-RPC服务器监听端口(默认值:8545)
7 X. i& `' u1 W2 _& ?; }. \
--rpcapi value 基于HTTP-RPC接口提供的API8 g9 a4 ^% V& y/ c% _
--ws 启用WS-RPC服务器$ D+ a/ F0 K" E0 L
8 R0 H$ ?' d9 u0 b! r# w8 I( B0 C
--wsaddr value WS-RPC服务器监听接口地址(默认值:“localhost”)
--wsport value WS-RPC服务器监听端口(默认值:8546)
--wsapi value 基于WS-RPC的接口提供的API4 c5 Z9 i* b) A2 I O
--wsorigins value websockets请求允许的源
- x9 z* c1 W" X" I( v) C
--ipcdisable 禁用IPC-RPC服务器* ]3 k) T, h+ t
3 C7 h+ N1 ?" r# V2 c1 K
--ipcpath 包含在datadir里的IPC socket/pipe文件名(转义过的显式路径)
--rpccorsdomain value 允许跨域请求的域名列表(逗号分隔)(浏览器强制)# K* j) ?6 X$ X! G% X
2 J, j$ c8 R' w& z/ s% e6 m
--jspath loadScript JavaScript加载脚本的根路径(默认值:“.”)
--exec value 执行JavaScript语句(只能结合console/attach使用)
--preload value 预加载到控制台的JavaScript文件列表(逗号分隔)
- M& E, T7 @! n% f
网络选项:3 m- D ]) P* {: G G
" }9 f; C( s" H2 V. @" Q, i
--bootnodes value 用于P2P发现引导的enode urls(逗号分隔)(对于light servers用v4+v5代替)
! A5 m& ^7 h4 d3 u8 t1 X
--bootnodesv4 value 用于P2P v4发现引导的enode urls(逗号分隔) (light server, 全节点)
--bootnodesv5 value 用于P2P v5发现引导的enode urls(逗号分隔) (light server, 轻节点)8 t, j. I( o2 r6 I. x/ Z7 F7 @
--port value 网卡监听端口(默认值:30303)
, ~) ^$ U _. m$ i$ o2 d8 C* K" X" T
--maxpeers value 最大的网络节点数量(如果设置为0,网络将被禁用)(默认值:25)
7 X! W0 p/ ]7 L3 k' z. r
--maxpendpeers value 最大尝试连接的数量(如果设置为0,则将使用默认值)(默认值:0)
8 a ], o8 H" |! ?1 G2 X
--nat value NAT端口映射机制 (any|none|upnp|pmp|extip:[I]) (默认: “any”)0 q' G4 v2 ]. b
--nodiscover 禁用节点发现机制(手动添加节点); Y' s6 D4 u/ b' _4 M. [0 G4 H
& X _, c5 n; \ e: N' \, k
--v5disc 启用实验性的RLPx V5(Topic发现)机制
+ ]7 @/ S( s5 Z1 I! S4 J
--nodekey value P2P节点密钥文件
--nodekeyhex value 十六进制的P2P节点密钥(用于测试)
8 F- ]1 b) m" u/ T
矿工选项:% b3 H6 c5 f/ V: U) u- c0 X: D) p. q
5 w! w( p' v: e4 U4 w/ M7 y, X
--mine 打开挖矿- A5 [# b' F. ~8 U6 K
$ p; g" s8 p, }. V- I1 F
--minerthreads value 挖矿使用的CPU线程数量(默认值:8)$ Z: N+ @" c. C. n4 P8 E! Z
a8 i( y4 b9 U) U
--etherbase value 挖矿奖励地址(默认=第一个创建的帐户)(默认值:“0”)
- V$ t$ _6 Y, {
--targetgaslimit value 目标gas限制:设置最低gas限制(低于这个不会被挖?) (默认值:“4712388”)3 I% ~ G, P: ~. e5 G4 x* W
$ ]% P5 O- U7 q' _& i& p
--gasprice value 挖矿接受交易的最低gas价格
--extradata value 矿工设置的额外块数据(默认=client version)0 a G) e8 m* C7 {1 g' j
9 c Z9 T' }8 i8 ?; c& y; J
GAS价格选项:
$ c5 c# G4 @, H! j/ v% Z
--gpoblocks value 用于检查gas价格的最近块的个数 (默认: 10)
--gpopercentile value 建议gas价参考最近交易的gas价的百分位数,(默认: 50)
4 w6 x! R1 U( a
虚拟机的选项:, j* n3 g- L) D! w/ g& ~
% Y( _4 G" T8 F; Z) a
--vmdebug 记录VM及合约调试信息
日志和调试选项:
9 s2 M7 b% H0 J! {! y
--metrics 启用metrics收集和报告+ |3 k) M9 q9 n# _$ D
% p3 n* Z+ ?2 J! _
--fakepow 禁用proof-of-work验证3 l @2 ?; r0 Y( s5 d2 _! f
% K" u& C& r) R$ d
--verbosity value 日志详细度:0=silent, 1=error, 2=warn, 3=info, 4=debug, 5=detail (default: 3)
--vmodule value 每个模块详细度:以 =的逗号分隔列表 (比如 eth/*=6,p2p=5)
--backtrace value 请求特定日志记录堆栈跟踪 (比如 “block.go:271”)
--debug 突出显示调用位置日志(文件名及行号)5 P" g' l/ ^+ Z' g8 s
0 }+ }4 L3 |4 K* T9 t4 |
--pprof 启用pprof HTTP服务器
--pprofaddr value pprof HTTP服务器监听接口(默认值:127.0.0.1)
" m/ P4 q3 n1 r1 J% g
--pprofport value pprof HTTP服务器监听端口(默认值:6060)
--memprofilerate value 按指定频率打开memory profiling (默认:524288)
( \+ _2 J# e9 k
--blockprofilerate value 按指定频率打开block profiling (默认值:0)
% t1 z, l7 E! L# h# y& N
--cpuprofile value 将CPU profile写入指定文件
--trace value 将execution trace写入指定文件! a: c3 ^2 u h) ]0 T
WHISPER实验选项:
--shh 启用Whisper1 A q R2 a( h' T8 ~ ]% P
2 S. O" W3 }+ V, d2 l! E! X
--shh.maxmessagesize value 可接受的最大的消息大小 (默认值: 1048576)
--shh.pow value 可接受的最小的POW (默认值: 0.2)
弃用选项:
7 [' x) v8 w' G& W
--fast 开启快速同步9 Y% n/ B7 L$ z! T. w
( @+ c L, m+ ~$ D
--light 启用轻客户端模式 `: F6 b- F0 A
9 K0 e: S3 g+ C& [4 T$ C
其他选项:
" y9 A" f; A1 f8 K8 t- [
–help, -h 显示帮助
成为第一个吐槽的人