ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Ubuntu 中搭建以太坊区块链私有链(一)

2021-03-30 22:05:10  阅读:484  来源: 互联网

标签:GOPATH 以太 -- 创建 sudo apt Ubuntu 区块


1. 序言

在最近的项目开发中,遇到了搭建区块链的问题,这里以以太坊区块链为例,阐述一下区块链私有链的搭建教程。

2. 安装Go

  1. 到Go官网下载Go安包,下载地址https://golang.org/dl/
    在这里插入图片描述
  2. 选取合适的下载版本,这里选go1.16.2.linux-arm64.tar.gz
    将文件上传至Ubuntu,并解压
tar -zxvf go1.16.2.linux-arm64.tar.gz
  1. 将解压后的文件夹,放到自己平常的安装包位置,并设置0777权限
sudo cp -rf go /usr/local
cd /usr/local
sudo chmod -R 0777 go
  1. 配置环境变量
    创建工作目录,我选择创建在/home/hadoop目录下
mkdir GOPATH
sudo chmod -R 0777 GOPATH

使用sudo gedit ~/.bashrc命令修改环境变量,在弹出的记事本中添加以下内容。同时也在GOPATH目录下创建src和bin目录

export GOROOT=/usr/local/go #GOROOT是系统上安装Go软件包的位置。
export GOPATH=/home/hadoop/GOPATH #GOPATH是工作目录的位置。
export PATH=$GOPATH/bin:$GOROOT/bin:$PATH

使环境变量生效并检测有效性

source ~/.bashrc
go version # 检测有效性

若控制台打印出go version go1.16.2 linux/amd64即为安装成功。

3. 安装geth客户端

  1. 打开终端,依次执行以下命令
sudo apt-get update
sudo apt-get install software-properties-common
sudo add-apt-repository -y ppa:ethereum/ethereum
sudo add-apt-repository -y ppa:ethereum/ethereum-dev
sudo apt-get update
sudo apt-get install ethereum

安装完成后,在控制台输入geth -h,若出现以下界面则为安装成功:
在这里插入图片描述
2. 创建创世块
一个区块链应该有个起始链,需要创建一个创世快文件genesis.json,文件内容如下:

{
  "config": {
    "chainId": 666,
    "homesteadBlock": 0,
    "eip150Block": 0,
    "eip150Hash": "0x0000000000000000000000000000000000000000000000000000000000000000",
    "eip155Block": 0,
    "eip158Block": 0,
    "byzantiumBlock": 0,
    "constantinopleBlock": 0,
    "petersburgBlock": 0,
    "istanbulBlock": 0,
    "ethash": {}
  },
  "nonce": "0x0",
  "timestamp": "0x5ddf8f3e",
  "extraData": "0x0000000000000000000000000000000000000000000000000000000000000000",
  "gasLimit": "0x47b760",
  "difficulty": "0x00002",
  "mixHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
  "coinbase": "0x0000000000000000000000000000000000000000",
  "alloc": { },
  "number": "0x0",
  "gasUsed": "0x0",
  "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000"
}

具体字段含义大家可以去官网查找,这里就不一一赘述了。
3. 启动geth客户端
开启终端,输入命令

sudo geth --datadir data --networkid 20200321 --rpc --rpccorsdomain "*" --nodiscover --port 16333 --rpcport 8546 console --allow-insecure-unlock --rpcapi=eth,web3,admin,personal,net --rpcaddr "0.0.0.0"

其中--rpcport 8546代表rpc端口,系统默认是8545rpcapi=eth,web3,admin,personal,net代表作用域权限;--rpcaddr "0.0.0.0"允许所有ip访问。
如图所示代表创建成功:
在这里插入图片描述
4. 创建账户并挖矿
在控制台的命令行界面输入以下命令,即可创建账户并进行挖矿

> personal.newAccount("123456") # 123456为账户密码
# 输出  0x******************************************  账户名
> eth.coinbase # 查看账户
> miner.start(1) # 开始挖矿
> miner.stop() # 停止挖矿
> web3.fromWei(web3.eth.getBalance(web3.eth.accounts[0]),"ether") # 查询账户余额

上面就是关于以太坊区块链私有链的创建,后续的博客会陆续更新最新教程(本人也在学习)。在这里插入代码片

标签:GOPATH,以太,--,创建,sudo,apt,Ubuntu,区块
来源: https://blog.csdn.net/weixin_46903205/article/details/115336448

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有