在做一些测试工作的时候, 为了方便控制以及更快的进入真正的测试工作,可能需要搭建一个私有的以太坊网络.

而以太坊节点之间能够互相链接需要满足1)相同的协议版本2)相同的networkid,所以搭建私有网络最方便的方法就是通过geth命令中的--networkid选项,设置一个与主网不同的networkid(主网的networkid为1),这也是官方推荐的方法.

下面开始建立私有以太坊网络:

mkdir private-geth

cd private-geth

建立创世纪区块文件,是一个json格式的文件:

vim genesis.json

在创世纪区块的json文件中填入以下内容, 并保存.

{

"config": {

"chainId": 15,

"homesteadBlock": 0,

"eip155Block": 0,

"eip158Block": 0

},

"coinbase" : "0x0000000000000000000000000000000000000000",

"difficulty" : "0x40000",

"extraData" : "",

"gasLimit" : "0xffffffff",

"nonce" : "0x0000000000000042",

"mixhash" : "0x0000000000000000000000000000000000000000000000000000000000000000",

"parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",

"timestamp" : "0x00",

"alloc": { }

}

初始化创世纪节点,并设置data目录:

geth --datadir ./data/00 init genesis.json

启动节点, 加上console 表示启动后,启用命令行:

geth --datadir ./data/00 --networkid 15 console

在有一个账户之前,什么事情都不能干....,先继续在命令行中输入命令,查看当前节点中的账户:

> eth.accounts

[]

输出了一个"[]",说明毛都么有一根,更别说账户了.既然没有,那就来创建一个,继续输入命令:

> personal.newAccount("123456")

正常情况,命令行会输出:

INFO [05-15|23:59:29] New wallet appeared                      url=keystore:///home/zl/Documents/p… status=Locked

"0x5b901c2495c077f515ae84fc53206f2eb3bf8296"

再用之前查看账户的命令看看:

> eth.accounts

["0x5b901c2495c077f515ae84fc53206f2eb3bf8296"]

有输出了"0x5b.......96"这一串就是账户的地址.

账户有了,接下来做点更有意思的事,开始挖矿....继续在命令行书输出:

> miner.start()

INFO [05-16|00:07:25] Updated mining threads                   threads=0

INFO [05-16|00:07:25] Starting mining operation

null

INFO [05-16|00:07:25] Commit new mining work                   number=1 txs=0 uncles=0 elapsed=38.053ms

INFO [05-16|00:07:28] Generating DAG in progress               epoch=0 percentage=0 elapsed=1.715s

INFO [05-16|00:07:30] Generating DAG in progress               epoch=0 percentage=1 elapsed=3.448s

INFO [05-16|00:07:31] Generating DAG in progress               epoch=0 percentage=2 elapsed=5.059s

INFO [05-16|00:07:33] Generating DAG in progress               epoch=0 percentage=3 elapsed=6.799s

INFO [05-16|00:07:35] Generating DAG in progress               epoch=0 percentage=4 elapsed=8.373s

...................................这个percenage=100,也就是100%以后.,就不断的出现下面的提示.............

INFO [05-16|00:24:54] Successfully sealed new block            number=36 hash=95fdfd…1411ee

INFO [05-16|00:24:54]

区块链入门(2):搭建以太坊私有链(private network of ethereum),以及挖矿的操作..的更多相关文章

  1. 区块链--Ubuntu上搭建以太坊私有链

    1.搭建私链所需环境 操作系统:ubuntu16.04,开虚拟机的话要至少4G,否则会影响测试挖矿时的速度 软件: geth客户端 Mist和Ethereum Wallet:https://githu ...

  2. 转:使用 Go-Ethereum 1.7.2搭建以太坊私有链

    使用 Go-Ethereum 1.7.2搭建以太坊私有链 目录 [toc] 1.什么是Ethereum(以太坊) 以太坊(Ethereum)并不是一个机构,而是一款能够在区块链上实现智能合约.开源的底 ...

  3. Mac环境搭建以太坊私有链

    原文地址: 石匠的blog 为了测试以太坊智能合约,最方便的是在本地搭建一个以太坊私有链.在mac上搭建环境主要需要以下步骤. geth安装 geth是go-ethereum的简写,是一个用go语言编 ...

  4. 使用 Go-Ethereum 1.7.2搭建以太坊私有链

    目录 [toc] 1.什么是Ethereum(以太坊) 以太坊(Ethereum)并不是一个机构,而是一款能够在区块链上实现智能合约.开源的底层系统,以太坊从诞生到2017年5月,短短3年半时间,全球 ...

  5. docker 搭建以太坊私有链搭建

    最近区块链,火得不行,身边也有朋友准备玩这个,说是搭了一个星期,没有把环境搭建起来,叫我帮忙看看环境怎么搭建 于是我找到了官方的地址 https://github.com/ethereum/go-et ...

  6. CentOS7搭建以太坊私有链

    1. 环境准备:Win10 64位安装 VM VirtualBox,操作系统版本: CentOS-7-x86_64-Everything-1611.iso(7.71G). 切换root账号,方便安装程 ...

  7. Mac搭建以太坊私有链

    记录过程与问题 一.安装 以go版本的ethereum进行安装 brew tap ethereum/ethereum brew install ethereum # 如果希望基于ethereum的de ...

  8. ubuntu系统搭建以太坊私有链

    1.安装curl.git apt-get update apt-get install git apt-get install curl 2.安装go curl -O https://storage. ...

  9. 区块链学习:Windows下搭建以太坊私有链环境

    一:安装geth客户端 Windows要求必须是64位系统,从官方网站下载编译好的win64客户端,下载解压后只有一个Geth.exe问价,运行安装即可,下载地址如下: https://github. ...

随机推荐

  1. jumpserver跳板机

    一.安装依赖包 yum -y install epel-release yum clean all && yum makecache yum -y update yum -y inst ...

  2. java设计模式之桥接模式

    桥接模式 桥接(Bridge)是用于把抽象化与实现化解耦,使得二者可以独立变化.这种类型的设计模式属于结构型模式,它通过提供抽象化和实现化之间的桥接结构,来实现二者的解耦.这种模式涉及到一个作为桥接的 ...

  3. 老李分享:导出xml报告到手机

    老李分享:导出xml报告到手机   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq:908821 ...

  4. 老李推荐:第5章2节《MonkeyRunner源码剖析》Monkey原理分析-启动运行: 启动流程概览

    老李推荐:第5章2节<MonkeyRunner源码剖析>Monkey原理分析-启动运行: 启动流程概览   每个应用都会有一个入口方法来供操作系统调用执行,Monkey这个应用的入口方法就 ...

  5. [转]android4.0.3 修改启动动画和开机声音

    本文转自:http://www.cnblogs.com/jqyp/archive/2012/03/07/2383973.html 1. Linux 系统启动,出现Linux小企鹅画面(reboot)( ...

  6. boostrap详情解毒

    详解Bootstrap表单组件 表单常见的元素主要包括:文本输入框.下拉选择框.单选框.复选框.文本域.按钮等.下面是不同的bootstrap版本: LESS:  forms.less SASS:  ...

  7. 微信小程序省市联动

    最近呢刚好做了一个省市联动的功能,今天看到有人问这个怎么做,我就把我做的放上来共享一下: 首先呢,来看看效果,点击文字'点击',弹出选择窗口,点击取消或者确定(取消.确定按钮在选择框上边,截图有些不清 ...

  8. 4 安装MPush

    cnblogs-DOC 1.服务器环境 2.安装Redis3.安装Zookeeper4.安装MPush5.安装Alloc服务6.完整测试7.常见问题 一.Linux安装Mpush [root@loca ...

  9. java多线程基本概述(一)——线程的基本认知

    1.1.概念: 进程:进程是操作系统结构的基础,是一次程序的执行:是一个程序及其数据再处理器上顺序执行时所发生的活动:是程序再一个数据集合上运行的过程,它是系统进行系统资源分配和调度的最小单元. 线程 ...

  10. 《分布式Java应用之基础与实践》读书笔记一

    分布式Java应用的体系结构知识简单分为: 网络通信:包括协议和IO 消息方式的系统间通信:包括基于Java包.基于开源框架.性能角度 远程调用方式的系统间通信:包括基于Java包.基于开源框架.性能 ...