Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文

以太坊客户端Geth命令用法-参数详解

东阿制造
137 0 0
  Geth在以太坊智能合约开发中最常用的工具(必备开发工具),一个多用途的命令行工具。
. H" P3 c9 v. l. V
: x( ^" e0 T& ?/ t& x# X9 s  熟悉Geth可以让我们有更好的效率,大家可收藏起来作为Geth命令用法手册。 本文主要是对geth help的翻译,基于最新的geth 1.7.3-stable版本。
9 r8 n4 U$ U& y) ^) x$ f4 I
& `2 ]# q1 d) A: n  命令用法( l; `) Q8 ?7 ?. j+ V4 S* p- g
& U# D( l2 O3 {8 J
  geth [选项] 命令 [命令选项] [参数…]
) N, C1 \+ q/ p7 g* [( n9 n
' y1 `! U1 k# O( Z3 x  版本:
) a" D/ E) |- _$ V& |# `3 z1 G
, |) R& d7 p* H8 ]6 _  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

% f- `" C9 z2 T$ P! s$ p! A# ~& S  attach 启动交互式JavaScript环境(连接到节点)
' L- _# J, l1 k
; O) s4 y  f3 Y" q: H3 v9 {5 G  bug 上报bug Issues" Y, \, \7 @4 o
5 O- x) K# o3 f$ }0 E  z  R# J
  console 启动交互式JavaScript环境
! E7 c! Y6 K( U
! b2 C5 |4 Y: P$ U  copydb 从文件夹创建本地链
& c2 {/ z- r& C4 a5 l7 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 导入一个区块链文件
. X  o1 E+ p! S5 j8 T
! J! ]. V5 ]5 t% w/ \5 X2 f  init 启动并初始化一个新的创世纪块
7 @5 R3 b$ E$ ]1 H; K
' P# {2 H9 R9 \% R1 c8 x* ~2 z0 E# I  js 执行指定的JavaScript文件(多个); R( |) ^8 _! }( m! @. i# [
9 m/ O: ~1 [# O2 L8 W6 P
  license 显示许可信息, i" q3 Q2 ], m/ [

( s( H# z( F1 L& t0 n! g  makecache 生成ethash验证缓存(用于测试)
$ H( J" k7 }* W4 M+ Q# o+ x/ h; w
& X! J( f% U! P: @7 h3 j  makedag 生成ethash 挖矿DAG(用于测试)
9 G7 ^9 ~0 _. I# \' c0 D. Z/ S8 p4 [& T8 m7 X2 e9 F
  monitor 监控和可视化节点指标
. h; `+ v6 S/ o
- @& o: }0 R$ R  removedb 删除区块链和状态数据库: V. k" N0 v0 Y; ]2 ], Z# P

% G& g: L. o% v* C( I; U: B7 U  version 打印版本号
; O; X: I/ T0 z, @/ F1 V6 P* \: r8 S
7 G# `1 u0 l) r" e! Y7 |' F  wallet 管理Ethereum预售钱包3 d) \6 f. {; L; K) a

# P8 p% n, [  _; w( i: |  help,h 显示一个命令或帮助一个命令列表# k9 g7 ^) c- H# c, `

# ?! D0 |! w+ h* d/ M4 b4 v0 G2 j& ?/ D  ETHEREUM选项:+ J, ^+ @3 ^8 f  I* a

; k, I  E1 f  b& t& ^' `2 H  --config value TOML 配置文件8 t4 f, s1 _% t" |9 T+ Q

* l) p8 N0 L. n  --datadir “xxx” 数据库和keystore密钥的数据目录# S# l% `  m% W9 o+ Q
. R) j* F4 Z: }3 H7 q
  --keystore keystore存放目录(默认在datadir内)
: r' i% ^1 v$ R2 q& v% ?/ q9 O, \# E! t
  --nousb 禁用监控和管理USB硬件钱包
9 N" e! o% V/ k$ \( z0 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

3 p3 R" C% n9 f" }: F% A) P/ B# `  --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)
$ B4 |: o) k+ e( e9 T" Q3 u
/ w" i" b7 y/ n1 c  --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)
/ x: ]1 `% l  g6 u
2 M) p: ^! Z8 O( b. L  --lightkdf 在KDF强度消费时降低key-derivation RAM&CPU使用
$ m( l, v' \5 V" v2 v, E
- e! y+ E% L, q" @  @  u  开发者(模式)选项:8 N/ K2 S! {9 y: v6 c, z
5 D, ~3 B/ `7 w/ K) J
  --dev 使用POA共识网络,默认预分配一个开发者账户并且会自动开启挖矿。
0 Y9 _0 ~  M4 S: }( S
$ U) G$ K( @+ C" T9 g  --dev.period value 开发者模式下挖矿周期 (0 = 仅在交易时) (默认: 0)# B* `5 B: e' a4 ~  _2 D, E1 z

( l8 ~  V- P; G. V& o5 E& \) `  ETHASH 选项:: Z1 _6 P9 _$ J1 {+ g
) I/ o' _7 V. x: d
  --ethash.cachedir ethash验证缓存目录(默认 = datadir目录内)
0 |0 X7 j  ^6 j$ O( J6 X7 i7 {+ Z, K( M8 s7 p
  --ethash.cachesinmem value 在内存保存的最近的ethash缓存个数 (每个缓存16MB ) (默认: 2)
! L$ u% `3 `, N: I7 [$ J, ^  ^8 r
0 W* I+ ^- ]( h% F: D+ [& }0 Q  --ethash.cachesondisk value 在磁盘保存的最近的ethash缓存个数 (每个缓存16MB) (默认: 3)
, a1 y5 L( S' i1 v- O
5 o0 f# P" g  L& A! {  --ethash.dagdir "" 存ethash DAGs目录 (默认 = 用户hom目录)
4 w( g( d2 b! e
& K4 [2 K  b' b3 ?  --ethash.dagsinmem value 在内存保存的最近的ethash DAGs 个数 (每个1GB以上) (默认: 1); a3 C0 n: D+ X7 A! e% ^& i

5 k3 K4 O; @% E. L1 S% O  --ethash.dagsondisk value 在磁盘保存的最近的ethash DAGs 个数 (每个1GB以上) (默认: 2)
0 Y' l$ y: [5 X# M; W) z( \
& A  V: R- {6 J. E  交易池选项:! G9 [9 Y6 L, \4 Y' @/ y

+ C( g5 T) T& Y% j  --txpool.nolocals 为本地提交交易禁用价格豁免1 Z4 M0 l/ o/ X8 y

4 p4 Z7 [8 k8 e  a) m  --txpool.journal value 本地交易的磁盘日志:用于节点重启 (默认: "transactions.rlp")! d1 B7 x) g/ `' F' w3 K# l% G& r

) ^7 K5 B4 \5 ^/ x  --txpool.rejournal value 重新生成本地交易日志的时间间隔 (默认: 1小时)7 \# E- ~6 z7 t+ Q& t% K  D# j4 W5 E" l

1 c* E5 W; i8 X  --txpool.pricelimit value 加入交易池的最小的gas价格限制(默认: 1)' R- x$ c4 l8 C" J) u

( Y) }8 Z/ U* E) U1 ^  b  --txpool.pricebump value 价格波动百分比(相对之前已有交易) (默认: 10)7 i* e; w: _0 x5 |- R5 |
, ]$ Y9 J; {* b/ @9 h! B. y8 ^+ w, G
  --txpool.accountslots value 每个帐户保证可执行的最少交易槽数量 (默认: 16)
6 C$ U. \3 Y1 u* S9 N
) L; ^# A3 E) `. R3 e  --txpool.globalslots value 所有帐户可执行的最大交易槽数量 (默认: 4096)' ~6 m0 a) l# `

8 r: E; H7 e- e! N, X  ^  --txpool.accountqueue value 每个帐户允许的最多非可执行交易槽数量 (默认: 64)
3 \! K$ t6 m( E. j4 x# T4 {) e% l$ O, K3 C0 ?' Q0 w/ x' j3 l
  --txpool.globalqueue value 所有帐户非可执行交易最大槽数量 (默认: 1024)
$ \. x1 E* G0 v% S" Y7 J- s5 l+ e# M9 L  S' S
  --txpool.lifetime value 非可执行交易最大入队时间(默认: 3小时)' E. u. r+ N! ]
; N7 w6 _* ]) k# K# V7 O
  性能调优的选项:
( W5 K" }3 n4 j! |- d6 r9 h7 x% X& d" w8 Q) K* V
  --cache value 分配给内部缓存的内存MB数量,缓存值(最低16 mb /数据库强制要求)(默认:128)5 D3 c3 g  o+ f; r. T2 A7 h

" N2 o8 }2 U5 z5 E  --trie-cache-gens value 保持在内存中产生的trie node数量(默认:120)
, z) X7 G2 @6 Q4 ]. o" b8 V$ J5 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 需解锁账户用逗号分隔
; ~4 E7 y( M8 w& x  V/ P' s& n
6 E/ s) d2 [' }1 [0 o  --password value 用于非交互式密码输入的密码文件
0 h, m* x$ W0 T! p6 i1 ~* H  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服务器
8 D' t5 |/ d  W1 r- q2 e0 e  f/ |, w+ ]" z! x3 E8 b
  --rpcaddr value HTTP-RPC服务器接口地址(默认值:“localhost”)  n) K5 ^) n0 g5 C* U: H

3 U/ z, ^& d0 b4 b) g) i) n  --rpcport value HTTP-RPC服务器监听端口(默认值:8545)
1 g0 ~6 M6 a3 l7 X. i& `' u1 W2 _& ?; }. \
  --rpcapi value 基于HTTP-RPC接口提供的API8 g9 a4 ^% V& y/ c% _

/ S; |3 u. ~$ S% |  A  --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”)
8 t1 r, F# X  N
$ ~" ]5 X6 B% u) w, z( t  --wsport value WS-RPC服务器监听端口(默认值:8546)
0 X$ u9 }! M5 L! Z# y6 R5 H
! P& s/ A7 F3 U" }, U7 g" |( B  --wsapi value 基于WS-RPC的接口提供的API4 c5 Z9 i* b) A2 I  O

! z, B) r; O2 P( [  a1 g( h  --wsorigins value websockets请求允许的源
/ L6 m9 D4 P2 ~) C- 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文件名(转义过的显式路径)
% z8 h8 r. _: }6 J
* s9 w+ i# v7 ]. [1 @+ e  --rpccorsdomain value 允许跨域请求的域名列表(逗号分隔)(浏览器强制)# K* j) ?6 X$ X! G% X
2 J, j$ c8 R' w& z/ s% e6 m
  --jspath loadScript JavaScript加载脚本的根路径(默认值:“.”)
- v7 Z* k7 M+ L( [# r8 B0 b/ }7 S
4 C7 ]  T/ ]6 x  --exec value 执行JavaScript语句(只能结合console/attach使用)
( H# J& Z3 Y( O6 a, m
; X7 e% o# Q; ^: g  --preload value 预加载到控制台的JavaScript文件列表(逗号分隔)
% Q9 O( w, V1 ^- 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代替)
& u. J+ N0 t  B( |0 O2 r! A5 m& ^7 h4 d3 u8 t1 X
  --bootnodesv4 value 用于P2P v4发现引导的enode urls(逗号分隔) (light server, 全节点)
- {" J& G7 Q8 a- t
" L+ _4 f1 T4 C$ P  --bootnodesv5 value 用于P2P v5发现引导的enode urls(逗号分隔) (light server, 轻节点)8 t, j. I( o2 r6 I. x/ Z7 F7 @

" V* `" z' A3 ]: {  --port value 网卡监听端口(默认值:30303)
1 ?9 O" q0 K0 m  k. ?3 a, ~) ^$ U  _. m$ i$ o2 d8 C* K" X" T
  --maxpeers value 最大的网络节点数量(如果设置为0,网络将被禁用)(默认值:25)
: w! b& F$ w& E8 X) A1 p/ E+ K7 X! W0 p/ ]7 L3 k' z. r
  --maxpendpeers value 最大尝试连接的数量(如果设置为0,则将使用默认值)(默认值:0)
4 ^! }0 ~# j+ a8 a  ], o8 H" |! ?1 G2 X
  --nat value NAT端口映射机制 (any|none|upnp|pmp|extip:[I]) (默认: “any”)0 q' G4 v2 ]. b

6 C( }, S% D! L& ^  --nodiscover 禁用节点发现机制(手动添加节点); Y' s6 D4 u/ b' _4 M. [0 G4 H
& X  _, c5 n; \  e: N' \, k
  --v5disc 启用实验性的RLPx V5(Topic发现)机制
( w: `' y% B+ b1 R9 \+ d; X) x+ ]7 @/ S( s5 Z1 I! S4 J
  --nodekey value P2P节点密钥文件
0 `6 @6 f8 s& V  t+ w
8 G, f7 N3 z8 H* N; ]  --nodekeyhex value 十六进制的P2P节点密钥(用于测试)
9 C2 F" I6 E% O% }& R5 w, ^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”)
6 R$ N" E$ J/ R% W( M9 T+ H- 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价格
) r: e) N+ z4 C
$ K- ]& L& A; H" t  --extradata value 矿工设置的额外块数据(默认=client version)0 a  G) e8 m* C7 {1 g' j
9 c  Z9 T' }8 i8 ?; c& y; J
  GAS价格选项:
3 b" A1 \+ v% U% `! `3 u/ q# S$ c5 c# G4 @, H! j/ v% Z
  --gpoblocks value 用于检查gas价格的最近块的个数 (默认: 10)
; S2 |) ^; n+ |! R: Y1 H" d6 \( S
7 U0 e8 M4 @7 v, g9 j  --gpopercentile value 建议gas价参考最近交易的gas价的百分位数,(默认: 50)
% C8 [2 F6 F  K! }& g7 t. e* A4 w6 x! R1 U( a
  虚拟机的选项:, j* n3 g- L) D! w/ g& ~
% Y( _4 G" T8 F; Z) a
  --vmdebug 记录VM及合约调试信息
3 Q; D* ?' E1 e4 r, q; A3 I; u$ G
  }0 L  J0 j/ _% v! g& o. T7 q  日志和调试选项:
2 J$ k" x3 U- f- Z9 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)
0 M2 N. u. G6 j$ ^
$ a$ _9 [; v4 {1 V  --vmodule value 每个模块详细度:以 =的逗号分隔列表 (比如 eth/*=6,p2p=5)
; z2 @; N$ H1 V: N
7 F# m# p) M& U$ ?. ^* K4 ^  --backtrace value 请求特定日志记录堆栈跟踪 (比如 “block.go:271”)
0 f2 ~( d% j/ [/ g; J( @4 @
7 m$ q! B& _) F! W  --debug 突出显示调用位置日志(文件名及行号)5 P" g' l/ ^+ Z' g8 s
0 }+ }4 L3 |4 K* T9 t4 |
  --pprof 启用pprof HTTP服务器
9 s; l" ~  L' A0 }( }& U/ T3 W5 D. G& \
8 y3 t. w; b! i: b  Z  --pprofaddr value pprof HTTP服务器监听接口(默认值:127.0.0.1)
% k7 r. X& w# D9 d: a) F" m/ P4 q3 n1 r1 J% g
  --pprofport value pprof HTTP服务器监听端口(默认值:6060)
2 R  X* y7 |: ?
. _+ d4 h. l) ^, v  --memprofilerate value 按指定频率打开memory profiling (默认:524288)
* \* P2 h# [2 J( \+ _2 J# e9 k
  --blockprofilerate value 按指定频率打开block profiling (默认值:0)
! X. v: x2 l! v: R% t1 z, l7 E! L# h# y& N
  --cpuprofile value 将CPU profile写入指定文件
5 f9 G4 S1 x7 z$ k
* w3 x( W9 o0 ^. L( ~  --trace value 将execution trace写入指定文件! a: c3 ^2 u  h) ]0 T

5 `1 r! l% \% w- Y5 @7 k0 f  WHISPER实验选项:
& q1 J; D" Y( O2 a/ ]* s# Y
. {5 e7 Y$ a' X  Q7 `  `+ ^( T  --shh 启用Whisper1 A  q  R2 a( h' T8 ~  ]% P
2 S. O" W3 }+ V, d2 l! E! X
  --shh.maxmessagesize value 可接受的最大的消息大小 (默认值: 1048576)
, w/ X4 D: q' D' O5 G$ Q
  }9 X6 l) [8 \2 ?3 K  --shh.pow value 可接受的最小的POW (默认值: 0.2)
, r+ f  F( t; M) M
) f7 I  q8 C( P- w7 k, n  弃用选项:
7 W2 U/ t: H, ^) ~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
  其他选项:
0 N$ w8 Q9 u2 z4 H" y9 A" f; A1 f8 K8 t- [
  –help, -h 显示帮助
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

东阿制造 初中生
  • 粉丝

    0

  • 关注

    0

  • 主题

    18