以太坊客户端Geth命令用法-参数详解
东阿制造
发表于 2022-11-4 23:30:22
127
0
0
熟悉Geth可以让我们有更好的效率,大家可收藏起来作为Geth命令用法手册。 本文主要是对geth help的翻译,基于最新的geth 1.7.3-stable版本。
命令用法" W$ } k+ q ]
7 u* l9 N5 X/ R
geth [选项] 命令 [命令选项] [参数…]# r- j+ o6 `$ R; C$ W
, l8 G8 n* t3 e5 _4 H6 q# W
版本:
1.7.3-stable1 R" p* q6 F* V: m* s G
命令:
account 管理账户9 R) e7 z* [4 ^! ]: e5 L
attach 启动交互式JavaScript环境(连接到节点)
) {7 C3 y6 _5 M( r! e$ r: A
bug 上报bug Issues
3 t2 |" z# L( }) F% X
console 启动交互式JavaScript环境- ~$ Y/ n8 F V4 V/ `- n' q8 @; k
9 S& _; O) e, n- Z3 K+ b8 \4 Q# u: E" ~* A
copydb 从文件夹创建本地链
dump Dump(分析)一个特定的块存储
' U. ^( O6 n5 C$ q' [- D9 X
dumpconfig 显示配置值0 B) d: Y7 q7 `
export 导出区块链到文件
# x) [, Q# k5 f) [9 o
import 导入一个区块链文件
- T, v. u7 {$ W: p3 {& m3 J/ Z' [
init 启动并初始化一个新的创世纪块
js 执行指定的JavaScript文件(多个)% M! Q: `( y' V7 Y |. J( [
9 P5 D/ x; M9 B C, p% \" r
license 显示许可信息* e) E5 @+ K, M# R* Z
makecache 生成ethash验证缓存(用于测试)& U) p& P! Q/ R% L: P2 a' b
8 Q6 Q+ Q6 d2 Y2 k5 t) _
makedag 生成ethash 挖矿DAG(用于测试)
monitor 监控和可视化节点指标
4 K. \/ w3 S3 O. o/ g" s0 e
removedb 删除区块链和状态数据库
version 打印版本号
wallet 管理Ethereum预售钱包3 I# y" b2 ~# o0 b1 `' i' l' o% R
help,h 显示一个命令或帮助一个命令列表
ETHEREUM选项:
--config value TOML 配置文件
: ?. b8 [3 k7 F% i
--datadir “xxx” 数据库和keystore密钥的数据目录5 M0 D* }7 ], N/ r1 d0 `: A
--keystore keystore存放目录(默认在datadir内)
--nousb 禁用监控和管理USB硬件钱包8 ], e& u9 v. e2 @9 ]* I
3 i+ F) X) L8 B& X- R' v) i
--networkid value 网络标识符(整型, 1=Frontier, 2=Morden (弃用), 3=Ropsten, 4=Rinkeby) (默认: 1)
$ k# l' {) ^ k! X! h( i7 T# n
--testnet Ropsten网络:预先配置的POW(proof-of-work)测试网络+ G7 @' D! Q2 |1 y7 s
" g6 b/ s5 c! s7 ^" X9 d, `7 j
--rinkeby Rinkeby网络: 预先配置的POA(proof-of-authority)测试网络
9 V0 O: \+ ~" s% O) t* H/ @
--syncmode "fast" 同步模式 ("fast", "full", or "light")3 Y l, X5 f6 m* g
- y5 b6 c/ Y9 ^6 ?* Z% N
--ethstats value 上报ethstats service URL (nodename:secret@host:port). e4 S- @+ [' D9 D, N+ f
--identity value 自定义节点名
--lightserv value 允许LES请求时间最大百分比(0 – 90)(默认值:0)9 D/ @+ m x# }. A% W9 B
--lightpeers value 最大LES client peers数量(默认值:20)
--lightkdf 在KDF强度消费时降低key-derivation RAM&CPU使用
) u' e' w: ?2 E/ O" P3 |6 O
开发者(模式)选项:2 f j0 Q! V( b" E" V5 n; R
--dev 使用POA共识网络,默认预分配一个开发者账户并且会自动开启挖矿。
--dev.period value 开发者模式下挖矿周期 (0 = 仅在交易时) (默认: 0). x' _# W/ y/ \ }2 q
ETHASH 选项:
--ethash.cachedir ethash验证缓存目录(默认 = datadir目录内)
--ethash.cachesinmem value 在内存保存的最近的ethash缓存个数 (每个缓存16MB ) (默认: 2)+ I5 g5 _1 K& o4 [$ \! q
& p; [9 e I0 ~- Q8 z5 x
--ethash.cachesondisk value 在磁盘保存的最近的ethash缓存个数 (每个缓存16MB) (默认: 3)7 a. I; D% i2 X
--ethash.dagdir "" 存ethash DAGs目录 (默认 = 用户hom目录)
" P" _5 u3 A' j# Y$ G, K& H% N
--ethash.dagsinmem value 在内存保存的最近的ethash DAGs 个数 (每个1GB以上) (默认: 1)
--ethash.dagsondisk value 在磁盘保存的最近的ethash DAGs 个数 (每个1GB以上) (默认: 2)" ^: X7 H$ ~* }8 `
交易池选项:
2 r0 u9 D. z' F
--txpool.nolocals 为本地提交交易禁用价格豁免0 v: L# G- D V& A* s; X! U$ k
: v' p' x% k. l
--txpool.journal value 本地交易的磁盘日志:用于节点重启 (默认: "transactions.rlp")' Q' G, X8 D. i) w
--txpool.rejournal value 重新生成本地交易日志的时间间隔 (默认: 1小时), ]; @" J0 R! Z" d! {2 K
--txpool.pricelimit value 加入交易池的最小的gas价格限制(默认: 1)
4 W) K$ T: a/ t" }
--txpool.pricebump value 价格波动百分比(相对之前已有交易) (默认: 10)( j* a2 V7 g6 ~! s, `
9 E1 c; k- Z! u- U
--txpool.accountslots value 每个帐户保证可执行的最少交易槽数量 (默认: 16)
6 o; |# c: h9 M/ {& m0 |" a5 A v6 }+ M
--txpool.globalslots value 所有帐户可执行的最大交易槽数量 (默认: 4096)
& [5 G1 y8 Z' _" o. B& U* K4 f% w
--txpool.accountqueue value 每个帐户允许的最多非可执行交易槽数量 (默认: 64)$ D8 c" T$ X( R: P
--txpool.globalqueue value 所有帐户非可执行交易最大槽数量 (默认: 1024)3 G& o; [) ^) v" B& E+ x3 K
--txpool.lifetime value 非可执行交易最大入队时间(默认: 3小时)
& N$ z; ?+ M! q/ k9 O
性能调优的选项:( a: g$ P9 k: n! k# t
--cache value 分配给内部缓存的内存MB数量,缓存值(最低16 mb /数据库强制要求)(默认:128)
1 o! f- M6 X" \* C6 q$ D
--trie-cache-gens value 保持在内存中产生的trie node数量(默认:120); v! z# f+ A# N( C1 e. M
帐户选项:
: X' n$ T x! ^; j" R/ O+ {
--unlock value 需解锁账户用逗号分隔5 x6 G, b; e) H$ m' b- E% z
--password value 用于非交互式密码输入的密码文件
; ~8 ~7 `( F# E* H3 U
API和控制台选项:
1 A: i5 o' T7 g Q, E
--rpc 启用HTTP-RPC服务器
" b q2 ^1 R3 I$ a3 S2 E" p4 w
--rpcaddr value HTTP-RPC服务器接口地址(默认值:“localhost”)5 P# a! {: N7 H+ A
--rpcport value HTTP-RPC服务器监听端口(默认值:8545)2 b$ _* w1 T2 z: L' f. h
--rpcapi value 基于HTTP-RPC接口提供的API" c+ T0 P. B, c* j- M! G2 U- j$ p1 j
--ws 启用WS-RPC服务器
/ v+ Z( ^) J) [
--wsaddr value WS-RPC服务器监听接口地址(默认值:“localhost”)9 G/ ?: B6 C3 h t, j# b3 U- t
--wsport value WS-RPC服务器监听端口(默认值:8546)# \6 t; M7 l x7 z: [( G7 n& b. q0 J
--wsapi value 基于WS-RPC的接口提供的API
) c. J. q& e: _3 \8 h( g# Y
--wsorigins value websockets请求允许的源# [0 H- O9 I4 V# J
--ipcdisable 禁用IPC-RPC服务器 ~- L3 R4 ~9 F7 n, ~0 ^4 t
--ipcpath 包含在datadir里的IPC socket/pipe文件名(转义过的显式路径)
--rpccorsdomain value 允许跨域请求的域名列表(逗号分隔)(浏览器强制): J% K- j6 U5 @- i
8 S* \6 A2 W7 Z0 Y3 ~
--jspath loadScript JavaScript加载脚本的根路径(默认值:“.”)
# \0 k1 x* | r
--exec value 执行JavaScript语句(只能结合console/attach使用)
8 a) P) G" J' R5 b; Q, Z
--preload value 预加载到控制台的JavaScript文件列表(逗号分隔)1 e5 u) q' ^5 ~( s! \# B3 Z. G
- Y3 w+ S: B( }3 p$ w
网络选项:. `$ c; @( a6 M2 ^" s
--bootnodes value 用于P2P发现引导的enode urls(逗号分隔)(对于light servers用v4+v5代替)
--bootnodesv4 value 用于P2P v4发现引导的enode urls(逗号分隔) (light server, 全节点)4 u7 `3 v' m9 [
--bootnodesv5 value 用于P2P v5发现引导的enode urls(逗号分隔) (light server, 轻节点)
% j& h7 T; O7 q, P4 U: H' A
--port value 网卡监听端口(默认值:30303)" y; V9 t L% z- ]/ O/ o9 w
6 y* s0 ~9 w( ]) o4 E8 e
--maxpeers value 最大的网络节点数量(如果设置为0,网络将被禁用)(默认值:25)
2 H% U6 x* T5 |) n: _
--maxpendpeers value 最大尝试连接的数量(如果设置为0,则将使用默认值)(默认值:0)5 b$ |7 U. z: v7 y, p# _3 J+ X
7 v: s$ Y- x6 X& H- u
--nat value NAT端口映射机制 (any|none|upnp|pmp|extip:[I]) (默认: “any”). ^' k+ f/ n/ _! O
9 [- l4 r; b* Y4 M& ?
--nodiscover 禁用节点发现机制(手动添加节点)
--v5disc 启用实验性的RLPx V5(Topic发现)机制
--nodekey value P2P节点密钥文件5 H# E8 w' ?9 ]/ P& ^
' I8 O5 C) A. `0 U4 b
--nodekeyhex value 十六进制的P2P节点密钥(用于测试); a: ?$ _1 Q1 w+ G3 }
_1 f' z# |6 x. e- K
矿工选项:, C8 B: u5 c! A, W+ T! Y0 D
--mine 打开挖矿+ g+ ^' I; N/ N) a9 }2 c, X
: l* C7 O6 ?( e% P# K
--minerthreads value 挖矿使用的CPU线程数量(默认值:8)
--etherbase value 挖矿奖励地址(默认=第一个创建的帐户)(默认值:“0”)& x) X4 q6 S! n
--targetgaslimit value 目标gas限制:设置最低gas限制(低于这个不会被挖?) (默认值:“4712388”)
--gasprice value 挖矿接受交易的最低gas价格. L" T& h7 m |# l I
--extradata value 矿工设置的额外块数据(默认=client version)
GAS价格选项:2 w+ O3 q/ k, i* y8 G6 X
# L! E. ~4 P7 y" N; S! @3 m( b
--gpoblocks value 用于检查gas价格的最近块的个数 (默认: 10)
) ^# R' ]& a7 Z1 j3 g" @, g/ K* y- O
--gpopercentile value 建议gas价参考最近交易的gas价的百分位数,(默认: 50), }3 o% `) L3 q
虚拟机的选项:
& ~- {4 \+ J6 D
--vmdebug 记录VM及合约调试信息
日志和调试选项:* Z( {& y# E+ n( B% Y' F: A
# {, E: q, `/ `+ D* c: B/ \7 n& C/ X
--metrics 启用metrics收集和报告, i' f% U v- K8 I6 u+ i( L
--fakepow 禁用proof-of-work验证
4 c3 e( N3 V' ~- V+ }
--verbosity value 日志详细度:0=silent, 1=error, 2=warn, 3=info, 4=debug, 5=detail (default: 3)
1 W$ {/ F! j& |& B4 C( y& G
--vmodule value 每个模块详细度:以 =的逗号分隔列表 (比如 eth/*=6,p2p=5)9 S" f# x: x9 J" a+ E( P: f7 f4 j
/ t$ c7 ^" U, L: R8 b9 l) f2 r0 \, E
--backtrace value 请求特定日志记录堆栈跟踪 (比如 “block.go:271”)0 W3 D. h/ L0 M
2 r: T% b: m# t& W1 ^0 I; g
--debug 突出显示调用位置日志(文件名及行号)& u; j8 E' d$ y& R
/ R" T; t3 l) n! O/ E/ `
--pprof 启用pprof HTTP服务器
--pprofaddr value pprof HTTP服务器监听接口(默认值:127.0.0.1)
--pprofport value pprof HTTP服务器监听端口(默认值:6060)& A% ^, `' t" }% C( ]
* i' v' g# [- ?+ C! }# A$ S- A
--memprofilerate value 按指定频率打开memory profiling (默认:524288)
--blockprofilerate value 按指定频率打开block profiling (默认值:0)" f0 w. d( c# z& m
--cpuprofile value 将CPU profile写入指定文件
--trace value 将execution trace写入指定文件
$ u: Z3 J c. w1 v6 U$ c: c8 }
WHISPER实验选项:, ^9 P0 t0 @) R( H9 {% x& r
--shh 启用Whisper
5 ]- z. Y7 l$ m4 p7 U9 b
--shh.maxmessagesize value 可接受的最大的消息大小 (默认值: 1048576)
--shh.pow value 可接受的最小的POW (默认值: 0.2)
, c* Z, _: M+ Q* m8 u
弃用选项:
5 A" d# `, w% O
--fast 开启快速同步
" L3 k0 |. t# ]$ \
--light 启用轻客户端模式% P ~9 n( o8 C- L/ i
: K. r0 H; t, `9 y. T1 U" T, Y
其他选项:
–help, -h 显示帮助
成为第一个吐槽的人