geth的安装和使用过程
- windows下安装Geth
- 配置和使用
- 搭建私有网络
windows下安装Geth
1.下载地址:
https://geth.ethereum.org/downloads/
下载windows版
2.按指示安装
3.在cmd下进入安装路径,输入geth help查看是否安装成功
出现下面情况表示安装成功。
配置和使用
搭建私有网络
1.配置genesis.json文件
在geth安装目录下配置一份genesis.json文件
{"config": {"chainId": 10,"homesteadBlock": 0,"eip155Block": 0,"eip158Block": 0},"alloc" : {},"coinbase" : "0x0000000000000000000000000000000000000000","difficulty" : "0x00000002","extraData" : "","gasLimit" : "0x2fefd8","nonce" : "0x0000000000000042","mixhash" : "0x0000000000000000000000000000000000000000000000000000000000000000","parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000","timestamp" : "0x00"}
2. 初始化,geth init命令
输入命令:geth --datadir data init genesis.json
E:\Geth>geth --datadir data init genesis.json
Fatal: Failed to read genesis file: open genesis.json: The system cannot find the file specified.
初始化失败,修改genesis.json文件
{"config": {"chainId": 369,"homesteadBlock": 0,"eip150Block": 0,"eip150Hash": "0x0000000000000000000000000000000000000000000000000000000000000000","eip155Block": 0,"eip158Block": 0},"nonce" : "0x0000000000000042","mixhash" : "0x0000000000000000000000000000000000000000000000000000000000000000","alloc" : {},"coinbase" : "0x0000000000000000000000000000000000000000","difficulty" : "0x00000002","extraData" : "","gasLimit" : "0x2fefd8","parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000","timestamp" : "0x00"}
出现下面内容表示成功。
3. 完成第二步后,创世区块已经产生,geth启动时,默认使用IPC协议,为确保geth节点可以通过RPC协议访问,命令中需要带上RPC参数。
4. 执行下面命令
E:\Geth>geth --datadir "E:\Geth\data" --rpc -rpcapi "eth,web3,miner,admin,personal,net" --rpccorsdomain "*" --nodiscover --networkid 15
执行结果
命令以服务的形式持续运行,因此执行其他命令需要打开一个新的命令行窗口。
- IPC协议接入,打开另一个窗口输入下面命令,可以使用IPC协议接入到节点上
E:\Geth>geth attach ipc:\\.\pipe\geth.ipc
结果:
6. RPC协议接入,打开另一个窗口输入下面命令,可以使用RPC协议接入到节点上
E:\Geth>geth attach ipc:http://127.0.0.1:8545
结果:
7. 创建新账户
使用 personal.newAccount()命令,根据提示输入密码,执行结果如下:
8. 账户创建后,需要确定使用coinbase账户或者etherbase账户。更改原有的coinbase账户地址,可以通过address.miner对象的setEtherBase函数进行操作。这个操作将使用新的账户替换原有的coinbase账户。更改结果将显示为ture或false。
9. 执行查询命令,查看地址是否已经更改生效。
10. 开始挖矿
miner.start()
或者
miner.start(4)
start中的参数代表用于挖矿的线程数量。该命令将自动执行挖矿程序。
在第一个窗口里可以看到挖矿记录。
- 停止挖矿
miner.stop()