LUMEN NETWORK

Decentralized Internet Stack

0%

Validators

Validator Guide

Complete guide to running a Lumen validator

Documentation
5 min read

Validator Documentation

This page focuses on the pieces that are Lumen-specific (chain id, denom, genesis source, and fee rules). For deeper ops tooling and scripts, use the Validator Kit. For the most complete reference, see the blockchain docs.

Quick Facts

  • Chain id: lumen
  • Bech32 prefix: lmn
  • Base denom: ulmn (1 LMN = 1,000,000 ulmn)
  • Gasless chain: tx fee must be exactly 0 (use --fees="0ulmn" when submitting tx)

Prerequisites

  • Hardware: 4+ CPU, 16GB+ RAM, SSD storage, stable network
  • Linux admin basics (systemd, firewall, logs)
  • Minimum stake: 1 LMN (1,000,000 ulmn) is typically ~1 voting power (Cosmos default power reduction)

Setup

1) Install and build lumend

sudo apt update && sudo apt upgrade -y
sudo apt install build-essential git curl -y

git clone https://github.com/network-lumen/blockchain
cd blockchain
make install

lumend version

2) Init with the correct chain id

MONIKER="your-validator-name"
lumend init "$MONIKER" --chain-id lumen

3) Install genesis (source of truth)

curl -L https://raw.githubusercontent.com/network-lumen/validator-kit/master/config/genesis.json > ~/.lumen/config/genesis.json

4) Configure gasless settings

Lumen nodes should run with --minimum-gas-prices 0ulmn (non-zero values are rejected).

Edit ~/.lumen/config/app.toml:

minimum-gas-prices = ""

Important: transactions must still set a zero fee (example: --fees="0ulmn").

5) Run as a systemd service

sudo tee /etc/systemd/system/lumend.service > /dev/null <<EOF
[Unit]
Description=Lumen Node
After=network.target

[Service]
User=$USER
ExecStart=$(which lumend) start --minimum-gas-prices 0ulmn
Restart=on-failure
RestartSec=3
LimitNOFILE=4096

[Install]
WantedBy=multi-user.target
EOF

sudo systemctl enable lumend
sudo systemctl start lumend
sudo journalctl -u lumend -f

Create a validator

Once synced:

lumend tx staking create-validator \
  --amount=1000000ulmn \
  --pubkey=$(lumend tendermint show-validator) \
  --moniker="$MONIKER" \
  --chain-id=lumen \
  --fees="0ulmn" \
  --from=<your-key-name>

Delegation / Undelegation

lumend tx staking delegate <validator-address> 1000000ulmn \
  --from=<your-key-name> \
  --chain-id=lumen \
  --fees="0ulmn"
lumend tx staking unbond <validator-address> 1000000ulmn \
  --from=<your-key-name> \
  --chain-id=lumen \
  --fees="0ulmn"

Troubleshooting

Validator jailed

lumend tx slashing unjail \
  --from=<your-key-name> \
  --chain-id=lumen \
  --fees="0ulmn"

Resources

Validator Kit docs: