⚠️⚠️⚠️看前提示:本文是基于博主的区块链实验中的VMware虚拟机下以太坊(Ether)配置启动私有链解决方案。
一 、配置私有链
进入这一步之前可以先了解->基本的Ubuntu命令的含义:
mkdir | 创建目录(后面紧跟的是创建的目录名称) |
cd | 进入目录(后面紧跟的是进入的目录名称) |
Vim编辑器相关命令:
vim | 启动vim编辑器 |
i | 编辑模式(),可以修改文本内容(先用vim启动编辑器) |
ESC | 退出编辑模式(退出后无法进行文本内容的修改) |
:q+回车 | 退出当前文本编辑 |
:wq+回车 | 保存修改并退出 |
1.搭建以太坊私有链
创建私链需要定义创世块文件,这个文件用来创建区块链的创世区块。根据下述步骤在终端输入命令新建blockchain/consortium_blockchain文件夹(也可以手动创建👌)
新建blockchain文件夹:
mkdir blockchain
终端进入blockchain文件夹:
cd blockchain
在blockchain文件夹下新建consortium_blockchain文件夹:
mkdir consortium_blockchain
进入consortium_blockchain文件夹:
cd consortium_blockchain
在consortium_blockchain文件夹下新建genesis.json文件 //创世区块配置文件
vim genesis.json
⚠️执行vim这一步的时候你可能会遇到👇的反馈信息:
这是因为当前还没有安装vim的命令,👇安装vim:
sudo apt install vim
执行反馈的第一条命令后,再次重新执行刚才的vim genesis.json即可
vim genesis.json命令执行成功以后,会进入到genesis.json文件的写入区(空空的页面):
复制下面文本内容到genesis.json
{
"config": {
"chainId": 8434,
"homesteadBlock": 1,
"eip150Block": 2,
"eip150Hash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"eip155Block": 3,
"eip158Block": 3,
"byzantiumBlock": 4,
"alien": {
"period": 2,
"epoch": 300,
"maxSignersCount": 5,
"minVoterBalance": 100000000000000000000,
"genesisTimestamp": 1536136198,
"signers": [
"0x393faea80893ba357db03c03ee73ad3e31257469",
"0x30d342865deef24ac6b3ec2f3f8dba5109351571",
"0xd410f95ede1d2da66b1870ac671cc18b66a97778"
]
}
},
"nonce": "0x0",
"timestamp": "0x5b8f92c2",
"extraData": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
"gasLimit": "0xffffffff",
"difficulty": "0x1",
"mixHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"coinbase": "0x0000000000000000000000000000000000000000",
"alloc": {},
"number": "0x0",
"gasUsed": "0x0",
"parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000"
}
复制完成后,在上面的文本的最后的}后输入👇👇👇命令执行保存并退出当前文件操作:
:wq
2.查看文件目录结构
用已经安装好的tree命令查看当前文件夹的目录结构(user是你的用户名😄):
tree /home/user/blockchain/
3. 创建创世块
⚠️执行下述代码时,应该位于consortium_blockchain的目录下(可以用cd命令进入该目录,也可以在文件中找到该目录,手动从目录的位置开启一个新的终端)
geth --datadir "./myblockchain" init genesis.json
命令结果:
初始化结束后,当前目录会新建目录myblockchain,myblockchain目录下多了geth和keystore两个文件夹:
1) geth保存的该链上的区块数据
2)keystore保存该链上的用户信息
执行如下命令查看目录结构:
tree myblockchain
4.启动私有链
输入👇命令启动私有链:
geth --identity "myethereum" --rpc --rpcaddr "127.0.0.1" --port 30304 --rpcport "7545" --rpccorsdomain "*" --datadir ./myblockchain --rpcapi "db,eth,net,web3,admin,personal" --networkid 5777 console --allow-insecure-unlock
到此,私有链启动完成👏👏
这个终端不要关闭,新建一个终端执行下述命令以连接第二个geth终端实现挖币操作🔨🔨
下一篇《Ganache资源(linux )》传送门🚪:【Ganache资源(linux) - CSDN App】http://t.csdnimg.cn/01Qbo