区块链学习(一) 以太坊搭建

说明:本身有一台阿里云服务器,使用的是阿里云Linux系统,本身已有yum

1、使用yum命令安装golang语言

    yum install golang

   注意:1、中间有需要确认,输入小写的y,然后回车即可。

            2、如果有报错 Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again,这个是yum安装报错,请参看:http://www.it-jason.com/archives/393

2、下载以太坊源码

    wget https://github.com/ethereum/go-ethereum/archive/v1.8.3.zip

3、安装以太坊

    unzip v1.8.3.zip

    cd go-ethereum-1.8.3

    make

    注意:编译成功后,将在go-ethereum-1.8.3目录下出现build/bin这样的子目录,并且在该子目录下出现geth这样的可执行文件

4、创世区块文件的准备

    在go-ethereum-1.8.3/build/bin目录下创建init.json的文本文件,内容如下:

 {
  "config": {
        "chainId": 10,
        "homesteadBlock": 0,
        "eip155Block": 0,
        "eip158Block": 0
    },
  "coinbase"   : "0x0000000000000000000000000000000000000000",
  "difficulty" : "0x020000",
  "extraData"  : "",
  "gasLimit"   : "0x2fefd8",
  "nonce"      : "0x0000000000000042",
  "mixhash"    : "0x0000000000000000000000000000000000000000000000000000000000000000",
  "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
  "timestamp"  : "0x00",
  "alloc"      : {}

}



5、创世区块初始化

在go-ethereum-1.8.3/build/bin目录下执行以下命令以完成创世区块的创建:

./geth  --datadir "/data/eth/chain" init init.json

注意:上面命令中–datadir后面的 /data/eth/chain可以任意指定,无需提前创建,但是一定要保证有足够的磁盘空间。init.json是我们在上一步创建的文件,注意文件名要一致。

这样,创世区块就初始化完成了,下面将要进行最后一步,以太坊的启动。

6、以太坊启动

仍然在go-ethereum-1.8.3/build/bin目录下执行,执行的命令是:

./geth --rpc --rpccorsdomain "*" --datadir "/data/eth/chain" --port "30303" --rpcapi "db,eth,net,web3" --networkid 100000 console

注意:上面命令中–datadir 后的”/data/eth/chain”要跟我们上一步的–datadir 参数一致。

            此处,--networkid是表示此链的网络id为1108,以太坊的公网id是1;

            console表示进入js的控制台。

一直到出现Welcome to the Geth JavaScript console! 句话,并自动进入geth的命令行则说明以太坊私有链安装成功了。

到目前为止,我们的私有链就搭建成功了



基本命令

查看账户

> eth.accounts
[]


创建账户

> personal.newAccount()


查看账户余额
> eth.getBalance(eth.accounts[0])
0


开始挖矿
> miner.start()

停止挖矿
> miner.stop()

第一次挖矿要等待一段时间,直至DAG文件生成完毕。。。



    



猜你喜欢

转载自blog.csdn.net/qq_22894935/article/details/79814693