克隆
git clone https://github.com/ethereum/go-ethereum.git
安装
make all
可执行文件在 go-ethereum/build/bin 下
创建创世区块配置文件
mkdir /home/block vi /home/block/genesis.json
{
"config": {
"chainId": 15,
"homesteadBlock": 0,
"eip150Block": 0,
"eip155Block": 0,
"eip158Block": 0,
"byzantiumBlock": 0,
"constantinopleBlock": 0,
"petersburgBlock": 0,
"ethash": {}
},
"difficulty": "2000",
"gasLimit": "8000000",
"alloc": {
"7df9a875a174b3bc565e6424a0050ebc1b2d1d82": { "balance": "300000" }
}
}
difficulty参数影响初始挖矿难度
chainId参数网络id
alloc初始余额(可以写自己的eth地址)
这里的单位是wei 1eth=10^18wei
即1eth=1000000000000000000 18个0
初始化
geth init --datadir /home/block /home/block/genesis.json
运行
id为之前配置的id
geth --datadir /home/block --networkid 15
使用JavaScript 控制台运行
## 启动 geth --datadir /home/block --networkid 15 console 2>output.log ## 开发模式启动 该模式不需要初始化配置genesis.json geth --datadir /home/block --dev console 2>output.log
命令列表
eth:主要包含对区块链进行访问和交互相关的方法; net:主要包含查看p2p网络状态的方法; admin:主要包含与管理节点相关的方法; miner:主要包含挖矿相关的一些方法; personal:包含账户管理的方法; txpool:包含查看交易内存池的方法; web3:包含以上所有对象,还包含一些通用方法。 常用命令有: personal.newAccount():创建账户; personal.unlockAccount():解锁账户; eth.accounts:列出系统中的账户; eth.getBalance():查看账户余额,返回值的单位是Wei; eth.blockNumber:列出当前区块高度; eth.getTransaction():获取交易信息; eth.getBlock():获取区块信息; miner.start():开始挖矿; miner.stop():停止挖矿; web3.fromWei():Wei换算成以太币; web3.toWei():以太币换算成Wei; txpool.status:交易池中的状态;
命令查看钱包初始余额
把wei转为eth并输出
web3.fromWei(eth.getBalance("钱包地址"), "ether")



