Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文

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

东阿制造
102 0 0
  Geth在以太坊智能合约开发中最常用的工具(必备开发工具),一个多用途的命令行工具。+ p7 {) L1 E: K

; v5 B0 v- j5 c2 {" _8 Q5 Z  熟悉Geth可以让我们有更好的效率,大家可收藏起来作为Geth命令用法手册。 本文主要是对geth help的翻译,基于最新的geth 1.7.3-stable版本。
0 [( }6 a1 O7 b
! y: n. {- E# o7 H5 F. |) L  命令用法8 P+ |6 O4 d5 U* e. J, P
7 |& G( `( c. p# z. x& ?
  geth [选项] 命令 [命令选项] [参数…]
* d8 x6 c; I8 m' b
! d3 K2 \; f5 X; i* h/ U+ U- S' x5 c, i# z  版本:% 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

! D/ p+ N5 i1 l1 k* y/ ?6 {, T  account 管理账户. B$ V; D8 R- n& [

$ a. W% Y8 b9 R* r  N: V  attach 启动交互式JavaScript环境(连接到节点)
. B! b4 F8 X7 h/ t; a* d& X6 O/ z' t+ P9 u9 G5 I* j, m
  bug 上报bug Issues
% N: O& ~% p6 h( g3 z  \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

* }+ w- D! y  f/ B, k+ {8 Q  dump Dump(分析)一个特定的块存储
- j3 z) @0 {! C; C: e! H+ y* {- N1 p0 J6 b9 ^& h0 J! x, r
  dumpconfig 显示配置值
/ r8 |( s5 ^& n
' g. @5 r# E$ i. _8 ]+ _  export 导出区块链到文件. R. Z( W* F( N3 A6 X  z/ C
8 M8 ]" ]& |6 [3 h* `. S2 o
  import 导入一个区块链文件
" F# h- {; _# J7 J5 o9 {) `: U
, u* k8 A! Q( g# p% `; J# a  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

# w  [# {4 ~6 w  license 显示许可信息
  v$ [9 [6 `1 p! 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 监控和可视化节点指标
+ e! u$ j! U$ D. }6 u
- }6 z" L2 m" V9 f9 M  removedb 删除区块链和状态数据库1 D+ \# X" P3 }, Z

" ?1 u' d+ G! g( n' {: g  version 打印版本号
( w+ X" i5 @$ X+ y( G$ x2 o3 v( [  b& u. ~* h0 \0 D- y7 C
  wallet 管理Ethereum预售钱包
3 G" I+ j. B7 T! }' u( b" p
1 n: q9 l0 Q4 w+ C4 ~1 C  help,h 显示一个命令或帮助一个命令列表
  I* _0 u- {4 J  k  X$ F8 r' m2 Q- P% `/ 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- {

. r$ _* R. O5 ~4 T4 i  --keystore keystore存放目录(默认在datadir内)
2 w3 L4 V8 W# U2 O  S
" C' m1 s- d- |; d* P  --nousb 禁用监控和管理USB硬件钱包3 O6 W: k% h. E% _# `" j9 E

: Q9 p4 @. @% S1 q( k  --networkid value 网络标识符(整型, 1=Frontier, 2=Morden (弃用), 3=Ropsten, 4=Rinkeby) (默认: 1)  ^) W, }8 u2 r" |$ G/ j/ B

& p' `9 a, q1 n5 t: ?  D  --testnet Ropsten网络:预先配置的POW(proof-of-work)测试网络' j7 t" ?5 X- t; I

- }! e! \- d  [1 `$ |& q3 T4 l  --rinkeby Rinkeby网络: 预先配置的POA(proof-of-authority)测试网络
) ~% g+ C! w) }8 D& ]8 }6 |/ Y1 y: p* R
  --syncmode "fast" 同步模式 ("fast", "full", or "light")0 t" D* K8 O" Y8 ?0 ?( H5 ^

+ @0 k8 P& c7 l6 e* b9 }  --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)
6 T8 {$ T6 `/ W0 N% \0 N- t# `. L& U
  --lightpeers value 最大LES client peers数量(默认值:20)- e( _. d1 [, s1 O

7 g+ @6 H5 q, H' q/ J5 ]4 f! e3 t  --lightkdf 在KDF强度消费时降低key-derivation RAM&CPU使用
& b2 s/ d' U; R! O% B
, |0 D6 o9 f9 X4 ]; m  开发者(模式)选项:
, t- H! D" L6 Z5 [- h0 n7 n
, W, _" l. k  H' \* ?  --dev 使用POA共识网络,默认预分配一个开发者账户并且会自动开启挖矿。
" `: ]. q# i$ F
1 s1 O. ]: R3 O- \+ ]7 G  --dev.period value 开发者模式下挖矿周期 (0 = 仅在交易时) (默认: 0)
  [& k+ P6 y8 l; l0 F$ _
5 C- k% }6 _4 B4 E  ETHASH 选项:
; G" @; \# J, a" a# p/ y, y, r$ x( u4 s/ ]
  --ethash.cachedir ethash验证缓存目录(默认 = datadir目录内)
: E' @) T8 ^. N  j* _4 P+ C5 C
' J! A/ ]: X1 o  ^  --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)
5 Q* x5 S0 _) K5 l
# [  V' g1 }% B) G% b. l  --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)
" x' C/ c3 q4 G! `7 I  A# l: L: ^4 w
  --ethash.dagsondisk value 在磁盘保存的最近的ethash DAGs 个数 (每个1GB以上) (默认: 2)  w& a( x& E4 `

5 Z2 P8 g( _9 y1 k& p  交易池选项:
& R, G) c. I6 G3 k2 _  V/ f2 V' G; U& H) H. L: z& q' O
  --txpool.nolocals 为本地提交交易禁用价格豁免
6 D+ J, R1 O5 z3 ?5 u
- |& \; V( ~" K( Z2 ~1 ~' {; V  --txpool.journal value 本地交易的磁盘日志:用于节点重启 (默认: "transactions.rlp")
' B2 t, R7 Z/ p2 E5 M+ @  E) p% t0 d, H2 n: f) ^& w$ w
  --txpool.rejournal value 重新生成本地交易日志的时间间隔 (默认: 1小时)
( ~+ k" B( ^  z* _( O) G- c
6 m  e0 H$ N% z  --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)
" g4 D1 \1 V" D
3 c& Z" x# J5 v' d! C  --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

0 M6 J5 _# r& d, P6 L# C  --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小时)
/ ]- h/ `; I+ r" u
4 E, X# D* i' o2 h. x  性能调优的选项:
; ]' {  V. u7 |) S5 w7 a4 I/ x: i( m7 |  Y& t
  --cache value 分配给内部缓存的内存MB数量,缓存值(最低16 mb /数据库强制要求)(默认:128), i" ], p7 ?# K: s

7 Z4 M+ b( j, O4 b  ?  --trie-cache-gens value 保持在内存中产生的trie node数量(默认:120)9 Q" [( C$ i1 P% \2 M* m0 M# T

$ c7 s9 ?7 J& C( H6 ^  帐户选项:
/ z3 T" N- X5 [6 z2 a! K- N) S+ D  U: T1 x' `8 u) m9 c
  --unlock value 需解锁账户用逗号分隔% T' s2 C: H( Z: a) y" ]

8 S2 L4 X/ a0 P6 B+ i  --password value 用于非交互式密码输入的密码文件9 b8 S( q* l/ K" ]

% q0 A$ r8 w5 l# {9 K- ~1 D  API和控制台选项:$ @5 D- T- |' c) u

; `! l5 S# p0 b/ d3 ~- Z  --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服务器
0 J9 p; _8 ?) Q) ?
$ Z, O% w4 m; x' m  --wsaddr value WS-RPC服务器监听接口地址(默认值:“localhost”)
& x1 o! v/ s. j5 a( v0 D
/ I+ C3 C2 ^  v! d  i1 H  --wsport value WS-RPC服务器监听端口(默认值:8546)
4 v7 ]! J, \" A( a+ @& J8 Y9 \# f4 b2 H% ]4 N: [
  --wsapi value 基于WS-RPC的接口提供的API
; i7 M1 t0 [  c, O. i6 J/ `+ g8 p; s1 X% C9 [3 j1 X+ @
  --wsorigins value websockets请求允许的源
  |: R5 t$ y9 B( m5 A
: o7 X/ v$ k& T1 x3 s8 ?  --ipcdisable 禁用IPC-RPC服务器
2 l/ X, J& `9 X
1 L2 c3 C  o! [8 U5 ]. ]  --ipcpath 包含在datadir里的IPC socket/pipe文件名(转义过的显式路径)
* F! L3 s9 q: W/ M" k2 v
+ A1 v& Q8 h0 X  --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

" n' {9 R0 [* p: @  --exec value 执行JavaScript语句(只能结合console/attach使用)
2 @- v* g6 D" s( 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

; P: F( A: y. Z; H; u  --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, 全节点)
3 S5 W6 `' I( I! A9 v% F
3 l  E" ^% f! m1 e" ]5 ^$ t  --bootnodesv5 value 用于P2P v5发现引导的enode urls(逗号分隔) (light server, 轻节点), u: J% s( p1 Z$ {3 X0 [

: n7 B" R& I6 C  --port value 网卡监听端口(默认值:30303)
" Q' S5 K4 w$ w6 w% M  z2 g8 B1 d7 |7 S; c! Z# H
  --maxpeers value 最大的网络节点数量(如果设置为0,网络将被禁用)(默认值:25)! G% f- V" `( T( d

6 \# A3 R- K2 C  --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 禁用节点发现机制(手动添加节点)
: s/ o0 b+ Q4 I6 q1 \+ G
" e( d; l! F* @3 M5 w) f2 s. C  --v5disc 启用实验性的RLPx V5(Topic发现)机制# B# c( e. c, ?' w) ^8 P

! R8 e# `/ m7 n# B4 ^  --nodekey value P2P节点密钥文件
4 Z9 ~. c* x' q% M2 O! S- p5 ~1 Y5 z( H
& L# R  [5 Z- n3 b& U3 H  --nodekeyhex value 十六进制的P2P节点密钥(用于测试)# y) I: `! }( d! y  X% [) ~

) R' R+ |1 A0 M5 u! S  矿工选项:
/ a  B/ s( r% J6 O1 y4 ^6 @) _; c$ g3 p- r) i6 }5 @: _8 v8 B
  --mine 打开挖矿; C6 T1 a. @) g  ]# T$ S1 [

- R; _0 G7 T9 J0 X* T  --minerthreads value 挖矿使用的CPU线程数量(默认值:8)
' k" Z8 [4 J7 H4 `9 ]0 Z& g/ T2 x$ j5 g  H
  --etherbase value 挖矿奖励地址(默认=第一个创建的帐户)(默认值:“0”)
7 @; G' N( h8 r# L' b+ h$ x
. Y1 m$ J, ~; p  --targetgaslimit value 目标gas限制:设置最低gas限制(低于这个不会被挖?) (默认值:“4712388”)+ x: |. n2 l- y8 ~; V0 s

" L' @4 W0 g0 |6 [  --gasprice value 挖矿接受交易的最低gas价格5 K! Z$ W, |* t" L* s1 ]! v% x% K

) ~: p8 O3 Q2 B$ k2 f4 ]) I  --extradata value 矿工设置的额外块数据(默认=client version). B8 O1 s, e# w% A6 ~+ `
5 K# o) B, m( q
  GAS价格选项:; m$ F3 l& T+ b! m  Z

: U0 M1 k/ l2 M! `5 J/ U$ I  --gpoblocks value 用于检查gas价格的最近块的个数 (默认: 10)
" w! g& a3 |8 X7 j' B7 E; Z' u, U$ X$ l* M' d- k7 G
  --gpopercentile value 建议gas价参考最近交易的gas价的百分位数,(默认: 50)) k! {' c8 b' O! X0 c

9 L4 O4 V' ?( m) f  虚拟机的选项:6 o. Z; ?$ W8 C) W: Z! b

; e* B5 d2 K$ s' K2 X9 S8 r; P  --vmdebug 记录VM及合约调试信息
- d% E5 q: O: ~" w5 I0 x( a6 a# U2 \$ A+ t/ v/ G, q
  日志和调试选项:
( a' g$ d! d" i0 ?* q
8 p* O" O, W/ O7 l  j8 f6 k/ c' I0 \  --metrics 启用metrics收集和报告
1 c( q+ n6 [3 w/ n
+ b6 @& d, q; [5 i+ q  L5 }  --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)
! m; E( n6 t& X- X, l/ U" X: l# i6 O/ R
  --vmodule value 每个模块详细度:以 =的逗号分隔列表 (比如 eth/*=6,p2p=5)9 _! _8 @- f( m' \

  O  ?$ N) f. K+ L0 u  --backtrace value 请求特定日志记录堆栈跟踪 (比如 “block.go:271”)7 M# H$ @: k  h8 N2 m

, ], x- }' u& c0 f- g5 C, w! s( Y  --debug 突出显示调用位置日志(文件名及行号)
' @# r2 F3 H, l+ _
$ `! N2 J5 y  ?4 k3 N; {9 T; L  --pprof 启用pprof HTTP服务器
- Y$ D. ~* o( [! \
; C3 \9 |9 a# v9 D; B; @! \  --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)
2 ^! E5 c6 V& b; p  k0 x7 ]! y( C" p) q
  --memprofilerate value 按指定频率打开memory profiling (默认:524288)
, @+ L/ A( d: n) y# [' r0 ?5 ?) t3 ~# v
  --blockprofilerate value 按指定频率打开block profiling (默认值:0)* t' C9 J+ C# A! W* e7 s2 E6 N

& |2 Q( |6 u  X& \$ Z  U' M# I* q9 i  --cpuprofile value 将CPU profile写入指定文件
9 G7 D0 Z- C0 {4 O( f" p2 h- ~: b0 q5 ]- x# ?; k
  --trace value 将execution trace写入指定文件
# D" P  w) Y" l* Y# E* ]5 m. X% Z6 S! B! V% }
  WHISPER实验选项:3 H% h8 K: X6 n6 }& P

, N4 a2 y2 A3 N) }  --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
  弃用选项:
4 K/ ?$ x. }. }  `, U
: _, [4 v  u8 v. p/ [# `  --fast 开启快速同步
5 H. l+ |: c) I! Q: D& F1 i* _" r  K, m+ r) c3 |, y$ p7 B$ v
  --light 启用轻客户端模式& P9 g, u# ]4 c1 ^) k8 c! j

6 ]8 `# J. _# D% Z  其他选项:/ }) h3 V* w9 {4 _- U6 |/ @
9 c1 |$ F$ L( c' W; k$ |; ~$ o1 t
  –help, -h 显示帮助
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

东阿制造 初中生
  • 粉丝

    0

  • 关注

    0

  • 主题

    18