FBI.KIM

 找回密码
 立即注册
搜索
查看: 70|回复: 0
收起左侧

ETH节点部署

[复制链接]

 成长值: 671795

发表于 2023-1-15 19:23:49 | 显示全部楼层 |阅读模式

注册并开通会员!享受无限制特权!

您需要 登录 才可以下载或查看,没有账号?立即注册

x
下载ETH节点
wget https://gethstore.blob.core.wind ... .15-0f77f34b.tar.gz

启动ETH节点
将下载tar包移动到/data/eth/geth-linux-amd64-1.9.1-b7b2f60f/目录下,执行命令:
./geth --datadir /blockchain/eth/data --cache 1024 --rpc --rpcport 8545 --rpcaddr 127.0.0.1 --syncmode "light"

ETH节点RPC常用操作
打开控制台
$ ./geth attach rpc:”/data/eth/data/geth.ipc”
上述命令表示用本地RPC方式连接ETH节点

创建账户,参数是密码
在控制台输入下面命令:

personal.newAccount(“your password”)
“0x0fec688d601909d28faf6fe18cf6230d08b698b6”

默认第一个创建的用户为主用户

查看用户:查看用户:
eth.accounts
[“0x0fec688d601909d28faf6fe18cf6230d08b698b6”]

eth.accounts
[“0x0fec688d601909d28faf6fe18cf6230d08b698b6”]

账户的排序反映了他们创建的时间。 密钥文件存储在DATADIR / keystore下,可以通过复制其中包含的文件在客户端之间传输。 这些文件使用密码加密,如果它们包含任何数量的以太网,则应备份。 但是,请注意,如果您传输个别密钥文件,则提交的帐户顺序可能会发生变化,您可能无法在同一位置结束同一帐户。 因此请注意,只要您不将外部密钥文件复制到您的密钥存储区,只依赖帐户索引即可。账户的排序反映了他们创建的时间。 密钥文件存储在DATADIR / keystore下,可以通过复制其中包含的文件在客户端之间传输。 这些文件使用密码加密,如果它们包含任何数量的以太网,则应备份。 但是,请注意,如果您传输个别密钥文件,则提交的帐户顺序可能会发生变化,您可能无法在同一位置结束同一帐户。 因此请注意,只要您不将外部密钥文件复制到您的密钥存储区,只依赖帐户索引即可。

解锁帐户
personal.unlockAccount(“0xf9ab190a9c56fd0d945eac9659c0c9519b13c64e”)

或者
这里是给第一个账户解锁

user1=eth.accounts[0]
personal.unlockAccount(user1)

查看帐号余额
eth.getBalance(eth.accounts[0])

getBalance()返回值的单位是wei,wei是以太币的最小单位,1个以太币=10的18次方个wei。要查看有多少个以太币,可以用web3.fromWei()将返回值换算成以太币:

web3.fromWei(eth.getBalance(eth.accounts[0]),’ether’)
340

单位转换: Ether–> Wei

web3.toWei(1)

单位转换: Wei –> Ether

web3.fromWei(10000000000000000)

转账
转账前需要解锁帐号,就像输入银行卡号密码

eth.sendTransaction({“from”:”0x67128734480a0741595538d9d726f33addf83978”, “to”:”0x29a9a6bcf1ce7101ab93a029e2692298fc15e076”, “gas”:31000,”gasPrice”:web3.toWei(300,’gwei’),”value”:”1”})

eth.sendTransaction({“from”:”0x67128734480a0741595538d9d726f33addf83978”, “to”:”0x29a9a6bcf1ce7101ab93a029e2692298fc15e076”, “value”:”10000000000000000000000”})
“0x533d3c770aed09ede826c92e7460fd38d78a101752a7b3b25e4470d8594e77bb”

查看当前区块总数:
eth.blockNumber
69

通过区块号查看区块里打包的交易信息
eth.getBlock(6)
{
difficulty: 2,
extraData: “0xd783010803846765746887676f312e392e32856c696e75780000000000000000cff7302b0c5515614e52f1584ff3f6aceb10dfa6e2facb347bfe3c023878d3857fa48774a98c721bcc1fb2419a177d577a0926e9f51d037095ba53257f7f307701”,
gasLimit: 6246618,
gasUsed: 21000,
hash: “0x5e2506ce385e38bbe23765a24ec25f9742e4a3a5af7cd071088081535a6a0dd2”,
logsBloom: “0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000”,
miner: “0x0000000000000000000000000000000000000000”,
mixHash: “0x0000000000000000000000000000000000000000000000000000000000000000”,
nonce: “0x0000000000000000”,
number: 6,
parentHash: “0x716da23fef7103042762025aabc83f7075fca516ab9dc6d436daa58b8350953b”,
receiptsRoot: “0x056b23fbba480696b65fe5a59b8f2148a1299103c4f57df839233af2cf4ca2d2”,
sha3Uncles: “0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347”,
size: 713,
stateRoot: “0x7c93a037c0750ddca8330d9c84912c622cd355c6978fc4267ffe2c8517a32469”,
timestamp: 1520398599,
totalDifficulty: 13,
transactions: [“0x54325698db1fbc85799b2f72070cddc457932abf0eef0d30d4fb2710ddafa941”],
transactionsRoot: “0x712b5bba767dd0ecaeebbbeefdf097647a0f219f11f16e4a8a3d768b59ae442e”,
uncles: []
}

通过交易hash查看交易
eth.getTransaction(“0x54325698db1fbc85799b2f72070cddc457932abf0eef0d30d4fb2710ddafa941”)
{
blockHash: “0x5e2506ce385e38bbe23765a24ec25f9742e4a3a5af7cd071088081535a6a0dd2”,
blockNumber: 6,
from: “0x67128734480a0741595538d9d726f33addf83978”,
gas: 31000,
gasPrice: 300000000000,
hash: “0x54325698db1fbc85799b2f72070cddc457932abf0eef0d30d4fb2710ddafa941”,
input: “0x”,
nonce: 5,
r: “0xe14faca3d11a47ec4617927c84a04936dbaf783cc2187794e04299ce04352404”,
s: “0x6da16b4e07a4fc721273d3b09da1c8b29ad4ce8022a99eb3f8317247cf7f5386”,
to: “0x29a9a6bcf1ce7101ab93a029e2692298fc15e076”,
transactionIndex: 0,
v: “0xa95”,
value: 1
}

查看交易状态查看交易状态
txpool.status
{
pending: 0,
queued: 0
}

常见错误
异常现象:
使用geth客户端,当执行personal.unlockAccount()或在程序中调用personal_unlockAccount接口时,会出现:account unlock with HTTP access is forbidden异常。

异常分析
出于安全考虑,默认禁止了HTTP通道解锁账户,相关issue:https://github.com/ethereum/go-ethereum/pull/17037

解决方法
如果已经了解打开此功能的风险,可通启动命令中添加参数:
--allow-insecure-unlock

示例

./geth —datadir /blockchain/eth/data —cache 1024 —rpc —rpcport 8545 —rpcaddr 127.0.0.1 —syncmode “light” —allow-insecure-unlock

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|FBI.KIM

GMT+8, 2023-6-7 01:09

FBI博客

FBI论坛

FBI商城

快速回复 返回顶部 返回列表