接入 BubiChain 体验链
安装
安装包安装是指以安装包的方式来安装BubiChain节点。通过安装包安装BubiChain节点由五部分构成:获取安装包并解压 、注册服务 、修改服务启动路径 、设置开机启动 、修改配置文件。
下面以 linux 环境下的 BubiChain 4.0.0 为例。
获取安装包并解压
获取 BubiChain 的安装包并解压安装文件需要完成以下步骤。
- 得到安装包 bubichain-4.0.0-linux-x64.tar.gz。
输入以下命令把安装包拷贝到/usr/local/目录下。
cp bubichain-4.0.0-linux-x64.tar.gz /usr/local/
注意:以上拷贝操作是在文件下载目录下完成的。您需根据具体的下载目录来拷贝文件。
输入以下命令进入到 /usr/local/目录下。
cd /usr/local/
输入以下命令解压文件。
tar -zxvf bubichain-4.0.0-linux-x64.tar.gz
注意:解压完成后得到bubichain/目录。
注册服务
文件解压后需要注册bubi和bubid的服务。注册服务需要完成以下步骤:
输入以下命令注册bubi的服务。
ln -s /usr/local/bubichain/scripts/bubi /etc/init.d/bubi
输入以下命令注册 bubid 的服务。
ln -s /usr/local/bubichain/scripts/bubid /etc/init.d/bubid
修改服务启动路径
修改 bubi 和 bubid 的启动路径需要完成以下步骤:
在local/目录下输入以下命令打开 bubi 文件。
vim bubichai/scripts/bubi
找到install_dir并更改bubi的安装目录。
install_dir=/usr/local/bubichain
注意: 默认情况下install_dir的目录在/usr/local/bubichain下;您可以根据 bubichain 的具体安装目录来修改。
单击
Esc
键退出编辑。输入
:wq
保存文件。在local/目录下输入以下命令打开bubid文件。
vim /bubichain/scripts/bubid
找到install_dir并更改bubid的安装目录。
install_dir=/usr/local/bubichain
注意:默认情况下install_dir的目录在/usr/local/bubichain下;您可以根据bubid的具体安装目录来修改。
单击
Esc
键退出编辑。输入
:wq
保存文件。
设置开机启动
设置开机启动包括设置启动级别,添加启动命令和修改文件权限。设置开机启动需要完成以下步骤:
输入以下命令设置1级。
ln -s -f /etc/init.d/bubid /etc/rc1.d/S99bubid
输入以下命令设置2级。
ln -s -f /etc/init.d/bubid /etc/rc2.d/S99bubid
输入以下命令设置3级。
ln -s -f /etc/init.d/bubid /etc/rc3.d/S99bubid
输入以下命令设置4级。
ln -s -f /etc/init.d/bubid /etc/rc4.d/S99bubid
输入以下命令设置5级。
ln -s -f /etc/init.d/bubid /etc/rc5.d/S99bubid
输入以下命令打开rc.local文件。
vim /etc/rc.local
在rc.local文件末尾追加以下命令。
/etc/init.d/bubid start
单击
Esc
键退出编辑。输入
:wq
命令保存文件。执行以下命令设置rc.local文件的权限。
chmod +x /etc/rc.local
注意:至此就完成了bubichain节点的安装。在启动bubi服务之前还需要选择运行环境的配置文件。
修改配置文件
在安装完BubiChain节点后需要修改配置文件才能启动bubi服务。步骤如下:
输入以下命令进入到配置文件目录。
cd /usr/local/bubichain/config/
输入以下命令重命名运行环境的配置文件。
vi bubi.json
注意:
- 修改配置文件 bubi.json,参考下面的配置。
- 重命名文件完成后可以通过
service start bubi
来启动bubi服务。- 安装完BubiChain节点后可以在bubichain/目录下查看安装文件的目录结构。
配置
通过修改bubichain的config目录下的bubi.json文件进行配置。这里主要配置 ledger 下的 validation_address 和 validation_private_key 。这两项是记录节点的账户地址和加密后的私钥,如果是同步节点,这两项没有作用,但是如果同步节点申请成为记录节点后,可用于参与共识。
结构
"ledger":{
"validation_address":"adxSagqQVre2TFEtWqdtHNJioyPmWo83pXmAC",//记账节点地址,同步节点或者钱包不需要配置
"validation_private_key": "76d3236e4809175c01b3d66ff46996680425c5a2518133b238a8979e54cecc40df4ad661abbb4a46479cd988a655c056d7cd863c782a36c9e446e9b708b451dc", //记账节点私钥,同步节点或者钱包不需要配置
"max_trans_per_ledger":1000, //单个区块最大交易个数
"tx_pool":{ //交易池配置
"queue_limit":10240, //交易池总量限制
"queue_per_account_txs_limit":64 //单个账号的交易缓冲最大值
}
}
注意:validation_address 和 validation_private_key 可以通过 bubi 程序命令行工具获得,请妥善保存该账号信息,一旦丢失将无法找回。
生成命令
1. 生成一个新的公私钥对,可执行的命如下(其中,address 和 private_key_aes 分别对应 validation_address和validation_private_key):
[root@bubichain ~]# cd /usr/local/bubichain/bin
[root@bubichain bin]#./bubi --create-account
{
"address" : "adxSagqQVre2TFEtWqdtHNJioyPmWo83pXmAC", //地址
"private_key" : "privbyG8fW84z1EyPeBoG1nGLDgGS2wz5N7hR6fh2bPNw7gkfaNbBaAm", //私钥
"private_key_aes" : "76d3236e4809175c01b3d66ff46996680425c5a2518133b238a8979e54cecc40df4ad661abbb4a46479cd988a655c056d7cd863c782a36c9e446e9b708b451dc", //AES 加密的私钥
"private_key_raw" : "c4ba7ee997653f72508c3e905c9a08263eba15190f1b62d465f1ff26b899841a", // 原始私钥
"public_key" : "b001891c86f7c2cbb8aceba533aaabe6032e980dd775baf1618ae1b682393c22aa515006fa48", //公钥
"public_key_raw" : "891c86f7c2cbb8aceba533aaabe6032e980dd775baf1618ae1b682393c22aa51", //原始公钥
"sign_type" : "ed25519" //ed25519 加密方式
}
- 若已有一个公私钥对,可通过以下命令对私钥加密(假如地址是adxSagqQVre2TFEtWqdtHNJioyPmWo83pXmAC,私钥是privbyG8fW84z1EyPeBoG1nGLDgGS2wz5N7hR6fh2bPNw7gkfaNbBaAm):
[root@bubichain ~]# cd /usr/local/bubichain/bin
[root@bubichain bin]#./bubi --aes-crypto privbyG8fW84z1EyPeBoG1nGLDgGS2wz5N7hR6fh2bPNw7gkfaNbBaAm
76d3236e4809175c01b3d66ff46996680425c5a2518133b238a8979e54cecc40df4ad661abbb4a46479cd988a655c056d7cd863c782a36c9e446e9b708b451dc
同步系统时间
要保证节点能够正常运行,需要保证该节点与公网的其他节点的时间戮一致,因此,需要定时同步更新系统时间。
定时同步时间
输入以下命令,每10秒同步更新一次系统时间。
echo "*/10 * * * * /usr/sbin/ntpdate ntpdate time.windows.com" >> /var/spool/cron/root
保证修改生效
为了保证修改生效,输入以下命令重启crond服务:
systemctl restart crond
服务命令
这里主要介绍的命令,包括:启动BUBI服务、关闭BUBI服务、查询BUBI服务状态、清空数据库。
启动BUBI服务
输入以下命令启动bubi服务。
service bubi start
关闭BUBI服务
输入以下命令关闭bubi服务。
service bubi stop
查询BUBI服务状态
输入以下命令查询bubi服务。
service bubi status
清空数据库
在清空数据之前需要停止BUBI服务。清空数据库需要完成以下步骤:
停止BUBI服务
service bubi stop
输入以下命令进入bubi的服务目录。
cd /usr/local/bubichain/bin
输入以下命令清空数据库。
./bubi --dropdb
清除成功,显示如下信息。
[root@bubichain bin]# ./bubi --dropdb [2019-05-23 15:13:51.507 - INF] <7FFFA81B4380> main.cpp(137):Initialized daemon successfully [2019-05-23 15:13:51.508 - INF] <7FFFA81B4380> main.cpp(138):Loaded configure successfully [2019-05-23 15:13:51.508 - INF] <7FFFA81B4380> main.cpp(139):Initialized logger successfully [2019-05-23 15:13:51.508 - INF] <7FFFA81B4380> main.cpp(146):The path of the database is as follows: keyvalue(/usr/local/bubichain/data/keyvalue.db),account(/usr/local/bubichain/data/account.db),ledger(/usr/local/bubichain/data/ledger.db) [2019-05-23 15:13:51.524 - INF] <7FFFA81B4380> storage.cpp(296):Drop db successful [2019-05-23 15:13:51.524 - INF] <7FFFA81B4380> main.cpp(153):Initialized database successfully [2019-05-23 15:13:51.524 - INF] <7FFFA81B4380> main.cpp(156):Droped database successfully
卸载BubiChain节点
在安装完BubiChain节点之后可以对安装文件进行卸载。如果是利用安装包安装的BubiChain节点,则可以按照以下步骤完成卸载:
输入以下命令删除bubichain的目录。
sudo rm -rf /usr/local/bubichain/
输入以下命令删除bubi的软连接。
sudo rm -rf /etc/init.d/bubichain
输入以下命令删除bubid的软连接。
sudo rm -rf /etc/init.d/bubid
至此就完成了BubiChain节点的卸载。