Btc私有链搭建


拉取最新的安装包

wget https://bitcoin.org/bin/bitcoin-core-22.0/bitcoin-22.0-x86_64-linux-gnu.tar.gz

解压

tar -zvxf bitcoin-22.0-x86_64-linux-gnu.tar.gz

全局命令安装

sudo install -m 0755 -o root -g root -t /usr/local/bin bitcoin-22.0/bin/*

创建环境目录并进入

mkdir /etc/bitcoin & cd /etc/bitcoin/

创建配置文件

touch /etc/bitcoin/bitcoin.conf

配置文件授权

chmod 600 /etc/bitcoin/bitcoin.conf bitcoin.conf配置文件(优先级低于命令行方式)

配置文件写入内容(rpc连接的用户名+密码)

echo rpcuser=hkvax >> /etc/bitcoin/bitcoin.conf echo rpcpassword=hkvax >> /etc/bitcoin/bitcoin.conf

可以写入其他内容:

#
rpcallowip=0.0.0.0/0
txindex=1
# 测试网络
#testnet=1
maxconnections=1
# 私链模式
regtest=1
server=1
# 节点可以挖矿
gen=1

启动

以默认参数启动:bitcoind -daemon 启动并打印日志:bitcoind -conf=/etc/bitcoin/bitcoin.conf >>btc.log 以自定义配置启动:bitcoind -conf=/etc/bitcoin/bitcoin.conf -daemon 自定义启动端口方式启动:bitcoind -conf=/etc/bitcoin/bitcoin.conf -rpcuser=user -rpcpassword=password -rpcport=9999 -daemon

停止

默认方式启动停止:bitcoin-cli stop 自定义配置停止:bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf stop  

多个私有链节点连接

第一个节点:bitcoind bitcoind -conf=/etc/bitcoin/bitcoin.conf -daemon -dnsseed=0 -addnode=172.16.247.145 第二个节点:bitcoind -conf=/etc/bitcoin/bitcoin.conf -daemon -connect=172.16.247.139 或者:bitcoind -conf=/etc/bitcoin/bitcoin.conf -daemon -dnsseed=0 -addnode=172.16.247.139 ... 验证节点连接情况:bitcoin-cli getpeerinfo ,会相互显示对等节点的地址      

一些其他指令:

bitcoin-cli getdifficulty bitcoin-cli listtransactions bitcoin-cli getinfo   查看所有命令: bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf help     查看btc客户端版本: bitcoind --version 创建钱包:bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf createwallet testwallet_99 钱包加密:bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf -rpcwallet=testwallet_99 encryptwallet "xxxxxx密码" 钱包解密:bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf -rpcwallet=testwallet_99 walletpassphrase "xxxx密码" timeout 钱包创建账号:bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf -rpcwallet=testwallet_99 getnewaddress testwallet_99 查看钱包地址详细信息:bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf -rpcwallet=testwallet_99 getaddressinfo bcrt1qxdza9gm74pganhvf87c8hs8xhgw0amttyx8fuz list当前节点所有钱包:bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf listwallets 查询钱包余额:bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf -rpcwallet=testwallet_99 getbalance 查看钱包信息:bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf -rpcwallet=testwallet_99 getwalletinfo 查看挖矿信息: bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf getmininginfo 查看网络信息:bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf getnetworkinfo 创建区块:bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf -rpcwallet=testwallet_99 -generate 100 向指定地址出块奖励:bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf -rpcwallet=testwallet_99 generatetoaddress 1 bcrt1q00rfylrs7a89dkguzzxanj4y4q9epdwaauncc8 查询区块信息:bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf -rpcwallet=testwallet_99 getblock 2e0336b86c0a5113ff8c2897502d07100a92c785241a1de2399df3880cfa7f7e 查询交易信息:bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf -rpcwallet=testwallet_99 gettransaction 05f027aa116ead716aec80bee99fe06665d5e458856c5f04988306aa4e2dd4d7 获取区块高度:bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf getblockcount 导入地址:bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf -rpcwallet=scvax importprivkey 'xxx私钥' 'xxx钱包' true 获取所有地址收入总额:bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf listreceivedbyaddress 1 true 加载钱包:bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf loadwallet "钱包名字" 卸载钱包:bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf unloadwallet ("wallet_name" load_on_startup) 显示地址私钥:bitcoin-cli -rpcuser=abc -rpcpassword=123456 -rpcport=9999 -rpcwallet=wallt1 dumpprivkey 2N33hCn1fSwZATgmAD55cetomi9MWB4V5xM   指定端口启动之后的指令:bitcoin-cli -conf=/etc/bitcoin/bitcoin.conf -rpcwallet=testwallet_99 -rpcport=9999     查看钱包下所有的label bitcoin-cli -rpcuser=abc -rpcpassword=123456 -rpcport=9999 -rpcwallet=wallt1 listlabels 查看label下所有的地址 bitcoin-cli -rpcuser=abc -rpcpassword=123456 -rpcport=9999 -rpcwallet=wallt1 getaddressesbylabel a_label_1     在本地私有测试链里面: 1、前100个区块是没有BTC奖励的。 2、区块奖励需要100个区块确认,第101个区块产生才会发出前第101个区块的奖励。