# Nolus 测试网节点空投指南

By [NodeVoyager](https://paragraph.com/@nodevoyager) · 2023-05-11

---

Nolus是Cosmos的第一个DeFi租赁协议，目标是建立一个货币市场应用链，利用渗透流动性来扩展Cosmos DeFi，使用DeFi Leases解决方案。

**渗透有何益处？**

*   为流动性提供者提供更多收入;
    
*   为质押者提供更多收入（通过汽油费）。
    

提高“实际产量”有助于渗透可持续增长！

近日，Nolus已完成种子轮融资**250万美元**，带来**2000万美元**的估值，此轮融资由Cogitent Ventures、DoraHacks、Everstake Capital、Token Metrics Ventures、Autonomy Capital等组成。

**节点奖励**

已经有部分空投KOL已经关注此项目，对点节点来说，后面也会有对应的奖励。

**_关注我们社区，获取更多有奖励的节点项目，不定时更新，欢迎交流!_**

**_discord：_**[**_discord.gg/PPhsfActZg_**](https://discord.com/invite/PPhsfActZg)

**_Twitter:_**[**_@NodeVoyagers_**](https://twitter.com/NodeVoyagers)

开始搞事情：

节点部署指南
------

*   网络类型: Testnet
    
*   Chain-id: nolus-rila
    
*   节点版本: v0.3.0
    

**硬件要求：**

*   2 个CPU 内核以上
    
*   至少 120GB 的 SSD 磁盘存储空间
    
*   至少4GB 内存
    
*   至少 100mbps 的网络带宽
    

### 一、部署全节点

准备：Golang go1.16.1 - go1.20.4 linux/amd64

    sudo apt-get install -y build-essential
    

**创建Nolus Core**

**1、下载git资料库**

    git clone https://github.com/Nolus-Protocol/nolus-core
    

**2、进入Core目录**

    cd nolus-core
    

**3、检查包含最新稳定版本的主分支**

    git checkout [latest version]
    

**4、编译Nolus Core并安装**

    make install
    

**5、通过检查版本验证 Nolus Core 是否安装正确**

    nolusd version --long
    

输出示例：

    name: nolus
    server_name: nolusd
    version: [version_of_nolusd]
    commit: [commit_hash]
    build_tags: netgo ledger
    go: go version go1.20.4 linux/amd64
    

如果报nolusd:command not found,用下面命令检查二进制路径：

`export PATH=$PATH:$(go env GOPATH)/bin`

### 配置和执行

**1、初始化Nolus Node**

    nolusd init [custom_moniker]
    

例如：_nolusd init MyFirstNolusNode_

**2、获取Genesis文件和设置持续性的Peers**

    wget https://raw.githubusercontent.com/Nolus-Protocol/nolus-networks/main/testnet/nolus-rila/genesis.json
    

**用上面获取的文件覆盖默认的genesis文件**

    mv ./genesis.json ~/.nolus/config/genesis.json
    

**同步信息**

PEERS="$(curl -s "[https://raw.githubusercontent.com/Nolus-Protocol/nolus-networks/main/testnet/nolus-rila/persistent\_peers.txt")"](https://raw.githubusercontent.com/Nolus-Protocol/nolus-networks/main/testnet/nolus-rila/persistent_peers.txt%22\)%22)

**设置**`config.toml`**文件**

    sed -i.bak -e "s/^persistent_peers =./persistent_peers = "$PEERS"/" ~/.nolus/config/config.toml
    

如果你的节点在启动时没有同步，使用kjnodes提供的实时对等体：

[https://services.kjnodes.com/home/testnet/nolus](https://services.kjnodes.com/home/testnet/nolus)

**3、编辑配置文件**

**a.调整最低gas费**

打开`~/.nolus/config/app.toml` 修改：

    minimum-gas-prices = "0.0025unls”
    

b.（此项可以不做修改）配置pruning

修剪状态

    pruning = "everything”
    

保留状态（与存档节点有关）

    pruning = "nothing”
    

4、设置Cosmovisor （此项可不做）

a.安装Cosmovisor

    go install github.com/cosmos/cosmos-sdk/cosmovisor/cmd/cosmovisor@latest
    

b.环境变量

在~/.profile中添加：

    export DAEMON_NAME=nolusd 
    export DAEMON_HOME=$HOME/.nolus 
    export MONIKER_NAME=<the-name-of-your-node>
    

访问profile

    source ~/.profile
    

c.调整文件夹布局

$DAEMON\_HOME/cosmovisor 像下面调整 ：

![](https://storage.googleapis.com/papyrus_images/7f3b09aeb299c73e9399b281de3e1c5881a17997930b172a9612add98a2879a9.png)

其他文件夹设置

    mkdir -p $DAEMON_HOME/cosmovisor/genesis/bin
    mkdir -p $DAEMON_HOME/cosmovisor/upgrades
    

d.设置genesis二进制

    cp /home/<your-user>/go/bin/nolusd $DAEMON_HOME/cosmovisor/genesis/bin
    

e.设置一个服务

    sudo nano /etc/systemd/system/cosmovisor.service
    

按你的需求修改，检查路径是否对，显示如下：

    [Unit]
    Description=cosmovisor
    After=network-online.target
    
    [Service]
    User=<your-user>
    ExecStart=/home/<your-user>/go/bin/cosmovisor run start
    Restart=always
    RestartSec=3
    LimitNOFILE=4096
    Environment="DAEMON_NAME=nolusd"
    Environment="DAEMON_HOME=/home/<your-user>/.nolus"
    Environment="DAEMON_ALLOW_DOWNLOAD_BINARIES=false"
    Environment="DAEMON_RESTART_AFTER_UPGRADE=true"
    Environment="DAEMON_LOG_BUFFER_SIZE=512"
    
    [Install]
    WantedBy=multi-user.target
    

**5、运行你的节点**

**a.没设置Cosmovisor，直接运行完事**

    nolusd start
    

**b.有设置Cosmovisor，按下面步骤执行**

    sudo -S systemctl daemon-reload
    sudo -S systemctl enable cosmovisor
    sudo systemctl start cosmovisor
    

    sudo systemctl status cosmovisor
    

    journalctl -u cosmovisor -f
    

### 搞定！

6、从快照中运行你的节点（可选）

由Bware实验室提供的关于如何从快照中运行Nolus Rila节点的指南：

[https://docs.blastapi.io/bware-labs-snapshot-service/supported-chains/nolus/testnet](https://docs.blastapi.io/bware-labs-snapshot-service/supported-chains/nolus/testnet)

### 二、运行验证者

运行上面全节点后，再运行验证者

**1、创建或恢复本地私钥对**

**创建新私钥对**

    nolusd keys add <key-name>
    

通过BIP39助记词，恢复现有的Nolus钱包

    nolusd keys add <key-name> --recover
    

从私钥库中获取你的公共地址

    nolusd keys show <key-name> -a
    

**2、升级验证者**

    nolusd tx staking create-validator \
    --amount 1000000unls \
    --commission-rate "0.1" \
    --commission-max-rate "0.20" \
    --commission-max-change-rate "0.1" \
    --min-self-delegation "1" \
    --pubkey=$(nolusd tendermint show-validator) \
    --moniker <the-name-of-your-node> \
    --chain-id "nolus-rila" \
    --gas-prices 0.0042unls \
    --from <key-name>
    

空命令示例：

    nolusd tx staking create-validator \
    --amount=[staking_amount_unls] \
    --commission-rate="[commission_rate]" \
    --commission-max-rate="[maximum_commission_rate]" \
    --commission-max-change-rate="[maximum_rate_of_change_of_commission]" \
    --min-self-delegation="[min_self_delegation_amount]" \
    --pubkey=$(nolusd tendermint show-validator) \
    --moniker="[moniker_id_of_your_node]" \
    --chain-id="[chain-id]" \
    --gas-prices="[gas_price]" \
    --from=[KEY_NAME] \
    

**3、确认你的验证者是否活跃**

    nolusd query tendermint-validator-set | grep "$(nolusd tendermint show-address)”
    

**4、保管好私钥**

### 验证者活跃后即成功

### 其他：

**恢复一个验证者**

一个验证器可以在一个新的Nolus节点上用以下一组密钥完全恢复：

*   共识密钥，存储在`**~/.nolus/config/priv_validator.json**`中
    
*   验证器钱包的助记符（应用密钥）。
    

要恢复一个验证器：

*   建立一个完整的Nolus节点，同步到最新的区块。检查上一节。
    
*   用旧节点的相关文件替换新节点的`**~/.nolus/config/priv_validator.json**`文件，然后重新启动你的节点。
    

**解除验证者**

    nolusd tx slashing unjail --from <yourKey> --chain-id nolus-rila --fees 500unls
    

[Subscribe](null)

---

*Originally published on [NodeVoyager](https://paragraph.com/@nodevoyager/nolus)*
