安装以太坊应用geth、go语言
- su命令进入管理员权限,sudo mkdir test 创建test文件夹,cd test进入目录
- sudo git clone https://github.com/ethereum/go-ethereum.git 命令下载以太坊客户端源码
- 下载完成后在创建好的目录有了文件,使用cd go-ethereum命令再 make geth构建geth
- sudo tar -zxvf go1.9.2.linux-amd64.tar.gz -C /home/seina/test 把go解压到test目录里面
- vim /etc/profile 配置环境变量
GOPATH=/home/seina/seina/test GOROOT=/opt/go - 启动一个以太链接:
没把geth放到全局变量,算了,以后运行 ./usr/bin/geth version 出现了版本号则可以在当前目录运行 在根目录里面,cd / 即可进入。
./usr/bin/geth --datadir ./test命令会在当前目录创建一个test文件夹然后执行全节点下载。 新建的test文件夹下面有两个文件,一个geth一个keystore。前者存储全节点信息,后者存放用户密钥。 rm -r test 命令删除测试用的test文件夹。
搭建一条私链
geth --datadir .–syncmode会启动节点同步,但是耗时占用资源大,故不做下载。
在根目录创建myChain文件夹,新建一个genesis.json 代码如下:
{
"config": {
"chainId": 15,
},
"difficulty": "2000",
"gasLimit": "0x2fefd8"
"alloc": {
"0x42F656cD5Ce8D5bbCB5E6AAF862F08a50fC18F74": { "balance": "30000000000000" }
}
}
保存退出后回到根目录,创建初始区块 ./usr/bin/geth --datadir …/myChain/ init …/myChain/genesis.json 显示出如下效果,即表示私链创始成功。 此时myChain文件夹出现了两个文件夹:geth和keystore。geth下有一个lightchaindata文件。初始信息全部保存在这个文件夹中。 …/usr/bin/geth --datadir . --networkid 8546 启动自己的私链。得到效果如图:
|