虽然标题说是保姆级,但还是需要一些基础知识的,但基本通过搜索引擎都能解决。
参与测试的好处:
具体可以查看官方发布的空投介绍:https://medium.com/defund-finance/airdrop-d-c2685d282858
准备工作:
远程工具:MobaXterm
Luinx 服务器:Ubuntu 20.04 (建议全新系统)
需要的硬件配置:8核-32G内存-1T硬盘(但我实际测试可能用不了这么高)
远程工具,看个人喜好,这里推荐MobaXterm,直接从官方下载免费版本安装即可。
Linux服务器系统建议选择Ubuntu20.04,这里推荐个云服务商,个人一直在使用,正好最近推出了新活动,4核-4G-180G-5T/月 仅仅$53/年可以说是非常便宜了。
打开云服务商网站点击 Sign up 注册下会员。
填写下注册信息,最后点击注册。
注册完成并登录后,需要先充值金额才能开通服务器,点击头像-选择Billing
接着点击Add-Funds,输入想要充值的金额,最后点击添加就会跳转到支付宝的支付界面,最后支付就可以。
这里提供下2种配置的机器,按个人承受能力选择。
4G- 4核-180G-5T/月 — $53/年 链接地址
8G-4核-280G-7T/月 — $102/年 链接地址
我这里以4G-4核的这个配置作为演示。可以看到配置已经是固定好的,无法更改并且价格是53刀每年。
选择系统Ubuntu20.04 ,填写主机名,其他选项默认即可。
填写完成后,直接点击Deploy Server 即可部署了,部署过程中大概需要几分钟,等待部署完成后,可以点击最上方导航栏,点VPS查看已经开通的服务器。我图片打码的位置显示的是服务器IP,复制下来,等下要用到。
开通成功后,会将默认密码发送到注册邮箱,如果没有发送密码,可以在管理界面重置服务器密码。
远程服务器
打开MobaXterm软件,点击Session按钮,然后点击SSH,输入服务器IP后点击OK。
输入root,然后回车,在输入密码(密码是隐藏显示,直接输入,或者粘贴都行)
远程成功后的显示界面应该是下图这样
开始部署验证器节点
更新系统和安装必要的组件
sudo apt update sudo apt install curl tar wget clang pkg-config libssl-dev jq build-essential bsdmainutils git make ncdu gcc git chrony liblz4-tool screen -y < "/dev/null"
安装go
wget https://golang.org/dl/go1.18.1.linux-amd64.tar.gz rm -rf /usr/local/go && sudo tar -C /usr/local -xzf go1.18.1.linux-amd64.tar.gz && rm go1.18.1.linux-amd64.tar.gz echo 'export GOROOT=/usr/local/go' >> $HOME/.bash_profile echo 'export GOPATH=$HOME/go' >> $HOME/.bash_profile echo 'export GO111MODULE=on' >> $HOME/.bash_profile echo 'export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin' >> $HOME/.bash_profile . $HOME/.bash_profile
验证是否安装成功
go version
下载官方程序
git clone https://github.com/defund-labs/defund
编译安装
cd defund git checkout v0.0.2 make install
安装完成后,运行下面的命令,NODE_NAME可以修改为任意的名字,需要记下来。
defundd config chain-id defund-private-1 defundd init NODE_NAME
修改种子文件和对等节点信息
wget -O $HOME/.defund/config/addrbook.json https://raw.githubusercontent.com/skyMetaverse/seeds/main/addrbook.json wget -O $HOME/.defund/config/config.toml https://raw.githubusercontent.com/skyMetaverse/seeds/main/config.toml wget -O $HOME/.defund/config/app.toml https://raw.githubusercontent.com/skyMetaverse/seeds/main/app.toml
下载创世纪文件
wget -O $HOME/.defund/config/genesis.json https://raw.githubusercontent.com/defund-labs/defund/v0.0.2/testnet/private/genesis.json
检查创世纪文件hash
sha256sum ~/.defund/config/genesis.json
sha256sum ~/.defund/config/genesis.json
输出内容必须和下面的一致: 268f625672ed618a844ee32bcfc3a66d51921b12e6a966a0965aa296fb82c032
重置状态
defundd tendermint unsafe-reset-all
创建钱包(
defundd keys add <key-name>
钱包地址还有助记词记录下来,后面的步骤需要用到。
创建服务文件(以一下内容,需要整块复制并粘贴)
sudo tee /lib/systemd/system/defund.service > /dev/null <<EOF [Unit] Description=Defund daemon After=network-online.target [Service] User=$USER ExecStart=${HOME}/go/bin/defundd start Restart=always RestartSec=3 LimitNOFILE=infinity LimitNPROC=infinity [Install] WantedBy=multi-user.target EOF
加载和启动服务
sudo systemctl daemon-reload systemctl restart systemd-journald sudo systemctl start defund
查看启动日志
journalctl -f -n 100 -u defund -o cat
可以看到上图日志中出现了很多报错,这个是因为刚开始连接节点,另外也是测试网不稳定等原因,暂时不用管报错信息。
等待一会后就会发现日志变成下图的样子了,这就代表正在同步节点中。关注下height=5358字段和区块链浏览器中的块高对比,可以看同步进度,**当日志看到的块高和浏览器显示的一致时代表同步完成,**经测试服务器配置越高,同步的越快,我当时4核4G同步了大概8–9小时。
区块链浏览器
领取测试币
将<defund_address>替换为自己的钱包地址,其他不变。
curl -X POST -d '{"address": "<defund_address>", "coins": ["20000000ufetf"]}' http://146.190.235.132:8000
第二种方式领水
打开水龙头网站输入钱包地址,点击请求。
以下步骤需要等同步完成后才能执行,不然的话,会报错。
以下步骤需要等同步完成后才能执行,不然的话,会报错。
以下步骤需要等同步完成后才能执行,不然的话,会报错。
创建验证器
--amount= 字段代表质押的测试币数量 --moniker= 名字之类的 --from= 这里填写上面自己创建的钱包地址defundd tx staking create-validator \ --amount=1000000ufetf \ --pubkey=$(defundd tendermint show-validator) \ --moniker="choose a moniker" \ --chain-id=defund-private-1 \ --commission-rate="0.10" \ --commission-max-rate="0.20" \ --commission-max-change-rate="0.01" \ --min-self-delegation="1000000" \ --gas="auto" \ --from=<key_name>
执行完成后就代表验证器运行成功了。
可以到这个网站查看是否运行成功。
可以看到是未活跃,这里主要是因为只有质押排名前100的才是活跃,而截止到教程发布,第100名质押了1914枚测试币。另外官方解释了不管是活跃还是未活跃都是有空投的,并且空投是平均分配的,而不是按照质押数量分配。
到此教程就完结,有不懂的可以到官方Dis社区提问。
更多精彩内容欢迎关注我的twitter:
https://twitter.com/skyMetaverse