geth使用指南文档中文版.pdf
文本预览下载声明
汇智网 H geth 使用指南
导读
本电子书由汇智网( )编目整理,原文由网友趁风
卷创作 ,最早发布于简书社区。
汇智网推出了在线交互式以太坊 DApp 实战开发课程,以去中心化投票应用
(Voting DApp )为课程项目,通过三次迭代开发过程的详细讲解不在线实践,
并且将区块链的理念不去中心化思想贯穿于课程实践过程中,为希望快速入门
区块链开发的开发者提供了一个高效的学习不价值提升途径。读者可以通过以
下链接访问《以太坊 DApp 开发实战入门》在线教程:
/course/5a952991adb3847553d205d1 ?affid=geth7878
教程预置了开发环境。进入教程后,可以在每一个知识点立刻进行同步实践,
而丌必在开发环境的搭建上浪费时间:
1 / 10
汇智网 H geth 使用指南
geth 使用指南
本文是对以太坊文档 Ethereum Frontier Guide 和 Ethereum Homestead 的整
理。Fontier 和 Homestead 分别是以太坊的第 1 和 第 2 个版本。
本文使用 go 语言编写的命令行客户端 geth
geth 的命令可以分为 CLI 命令和 JavaScript 控制台交互式命令,约定如下
geth account list:这是 CLI 命令
eth.accounts:这是 javaScript 控制台的命令,前面有一个 。进入
控制台的方式为 geth console
1. 安装和运行节点
1.1 安装客户端
geth 的安装教程请参见 Building Ethereum
1.2 同步区块
「同步」的意思是把网络上的区块全部下载到本地,以同步到网络的最新状态。
使用客户端前必须先同步区块。
同步命令如下
geth:全节点模式同步模式
geth --fast --cache=1024:--fast 快速同步模式,只下载状态(state
downloads)
更优雅的同步方式
geth --fast console 2network_sync.log:同步时把输出日志重定向到
network_sync.log 中,并进入控制台。这样就可以边同步边使用控制台
命令。
用 tail -f network_sync.log 可以重新浏览到日志
数据存放目录
主网络区块数据的默认存放目录是 ~/Library/Ethereum (Mac OS X)
2 / 10
汇智网 H geth 使用指南
其他系统下,可用该方式找到默认路径:geth -h 后搜索 --datadir,后
面跟着的就是默认目录
如果你想将区块下载到其他目录,可以使用命令 geth --fast --datadir
path
不同客户端是可以共用区块数据的。用 geth 同步的区块数据,可以在 Ethereum
Wallet 或 Mist 客户端里直接使用。
导入已有的区块文件
如果本地已有区块文件,可以将其导入
geth export filename:导出区块文件
geth import filename:导入区块文件
启动节点
geth 借助启动节点(bootstrap nodes)来初始化寻找过程。启动节点被
写在源码里,但可用这些方式修改
o geth --bootnodes enode://pubkey1@ip1:port1
enode://pubkey2@ip2:port2 enode://pubkey3@ip3:port3,
pubkey、ip 和 port 依次为启动节点的公钥地址、ip 和端口号。
o admin.addPeer(enode://pubkey
显示全部