做视频上传多少个网站,成都高端网站设计公司,人像摄影网站十大排名,微信小程序注册账号安装go环境 从参考链接选择Linux版本的go的安装包 使用命令 mv go#xff08;Tab补全#xff09;/usr/local 移动go安装包到/usr/local目录下使用命令解压 sudo tar -xvzf go(Tab补全) 配置环境 sudo gedit ~/.profile export PATH$PATH:/usr/local/go/bin激活生效 sou… 安装go环境 从参考链接选择Linux版本的go的安装包 使用命令 mv goTab补全/usr/local 移动go安装包到/usr/local目录下使用命令解压 sudo tar -xvzf go(Tab补全) 配置环境 sudo gedit ~/.profile export PATH$PATH:/usr/local/go/bin激活生效 source ~/.profile验证 go version 如果输出结果类似 go version go1.14.2 linux/amd64 表示安装成功
参考链接
如何在 Ubuntu 20.04 上安装 Go - 云社区 - 腾讯云Downloads - go.dev 官网下载安装包
安装以太坊Geth
安装之前需要确保已经安装了git sudo apt-get updatesudo apt-get install git查看安装是否成功 git --version安装Geth sudo apt-get install software-properties-commonsudo add-apt-repository -y ppa:ethereum/ethereumsudo apt-get updatesudo apt-get install ethereum查看安装是否成功 geth --help参考链接
Ubuntu18.04下安装geth_KaryDean的博客-CSDN博客
搭建联盟链
联盟链使用私有化部署只有使用同一个创世区块才可以加入到同一个组织内部创世区块信息写在一个json格式的配置文件中使用genesis.json 对其进行命名前提操作genesis.json文件内容如下直接拷贝复制即可
{config: {chainId: 666999, homesteadBlock: 0,eip150Block: 0,eip155Block: 0,eip158Block: 0},alloc : {},coinbase : 0x0000000000000000000000000000000000000000,difficulty : 0x20000,extraData : ,gasLimit : 0x2fefd8,nonce : 0x0000000000000042,mixhash : 0x0000000000000000000000000000000000000000000000000000000000000000,parentHash : 0x0000000000000000000000000000000000000000000000000000000000000000,timestamp : 0x00
}
参数解释注意事项我参考好多文章都缺失eip150Block:0这一句这会出现错误。报错情况为Failed to wirte genesis block:unsupported ordering新的方案
在/home/chy-cpabe/Test_chain_ipfs/文件夹下面创建chain-first和chain-second两个文件夹将这两个节点组合在一起构成联盟链在chain-first和chain-second文件夹下面各自创建chaindata文件夹用于数据存储和存储同一份genesis.json文件将chainid设置为一样的分别进行初始化操作–datadir指定区块链数据的存储位置这个需要大家根据实际的情况进行调整进行自己路径的替换--networkid指定创世脚本中的chainId 启动运行 初始化的命令
geth --datadir /home/chy-cpabe/Test_chain_ipfs/chain-first/chaindata init /home/chy-cpabe/Test_chain_ipfs/chain-first/genesis.json
geth --datadir /home/chy-cpabe/Test_chain_ipfs/chain-second/chaindata --networkid 666999 --port 30306 console 2output.log 启动节点
geth --datadir /home/chy-cpabe/Test_chain_ipfs/chain-first/chaindata --networkid 666999 --port 30303 console 2output.log
geth --datadir /home/chy-cpabe/Test_chain_ipfs/chain-second/chaindata --networkid 666999 --port 30306 console 2output.log 查看进程使用命令 ps aux | grep geth 查看当前的geth进程使用命令 sudo kill -9 进程ID即可杀死进程为两个节点都进行用户的创建
personal.newAccount()创建账户eth.accounts枚举系统中的账户admin.peers 查看节点的peers的情况 通过分享enode地址的方式来让两个节点建立链接 使用命令 admin.nodeInfo.enode通过上面命令我们获得了节点的encode信息。encode信息主要用于连接到不同节点在这些不同的节点它们能够分享交易和成功挖掘信息。联盟链互通
使用命令admin.addPeer添加分享enode地址的方式来让两个节点建立链接 admin.addPeer(enode://5dac7e1cbe892387f5ff403b5b79f4235789ba322fbc69f128ff5e5ef78c1475440e48444a6a39582d3742124647877dd7c4b75eceb746917b3cb0de433e5c97127.0.0.1:30306)返回true表示链接成功在两个节点的终端输入 admin.peers 查看互联的节点信息具体输入内容如下交互式执行环境
这是一个交互式的 JavaScript 执行环境在这里面可以执行 JavaScript 代码其中 是命令提示符。在这个环境里也内置了一些用来操作以太坊的 JavaScript 对象可以直接使用这些对象。这些对象主要包括eth包含一些跟操作区块链相关的方法net包含一些查看p2p网络状态的方法admin包含一些与管理节点相关的方法miner包含启动和停止挖矿的一些方法personal主要包含一些管理账户的方法txpool包含一些查看交易内存池的方法web3包含了以上对象还包含一些单位换算的方法。常用命令
personal.newAccount()创建账户personal.unlockAccount()解锁账户eth.accounts枚举系统中的账户eth.getBalance()查看账户余额返回值的单位是 WeiWei 是以太坊中最小货币面额单位类似比特币中的聪1 ether 10^18 Weieth.blockNumber列出区块总数eth.getTransaction()获取交易eth.getBlock()获取区块miner.start()开始挖矿miner.stop()停止挖矿web3.fromWei()Wei 换算成以太币web3.toWei()以太币换算成 Weitxpool.status交易池中的状态admin.addPeer()连接到其他节点
获取完整节点地址
但是执行这个命令之后 无法进入JavaScript console终端使用其余命令进入终端参考链接
区块链以太坊学习笔记_xpj55975的博客-CSDN博客https://www.i4k.xyz/article/qq_42532598/109333344以太坊之Metamask钱包Metamask简介安装使用导入账户挖矿转账_Rose J 的博客-程序员宅基地_metamask - 程序员宅基地
参考链接
以太坊如何搭建私有连联盟链_程序新视界-CSDN博客_以太坊搭建联盟链教程以太坊搭建联盟链详细教程_weixin_34183910的博客-CSDN博客以太坊联盟链-多节点私链搭建手册【附源码】_暗黑魔君_51CTO博客自己动手部署以太坊联盟链 - 掘金https://www.i4k.xyz/article/qq_42532598/109333344以太坊私有链 使用dev模式_CHYabc123456hh的博客-CSDN博客基于Mac环境搭建以太坊私有区块链进行挖矿模拟_CHYabc123456hh的博客-CSDN博客_mac挖矿ethhttps://github.com/xianfeng92/Love-Ethereum/blob/master/notes/%E8%87%AA%E5%B7%B1%E5%8A%A8%E6%89%8B%E9%83%A8%E7%BD%B2%E4%BB%A5%E5%A4%AA%E5%9D%8A%E8%81%94%E7%9B%9F%E9%93%BE.md请使用手机扫一扫x