Useful commands
List of commands used to manage the validator and node
Wallet interaction
Create Wallet
entangled keys add <WALLET_NAME>
Restore wallet
entangled keys add <WALLET_NAME> --recover
Show all wallets
Delete wallet
entangled keys delete <WALLET_NAME>
Export wallet
entangled keys export <WALLET_NAME>
Import wallet
entangled keys import <WALLET_NAME> <WALLET_NAME>.backup
Show balance
entangled query <WALLET_NAME> balance
Validator control
Create a validator
entangled tx staking create-validator \
--commission-rate 0.1 \
--commission-max-rate 1 \
--commission-max-change-rate 1 \
--min-self-delegation "1" \
--amount 1000000000000000000aNGL \
--pubkey $(entangled tendermint show-validator) \
--from <WALLET_NAME> \
--moniker=<YOUR_MONIKER> \
--chain-id entangle_33133-1 \
--gas=500000 \
--gas-prices="10aNGL" \
--identity="<YOUR_KEYBASE_ID>" \
--website="<YOUR_WEBSITE>" \
--details="<YOUR_DETAILS>" -y
Edit validator
entangled tx staking edit-validator \
--moniker="<YOUR_MONIKER_NAME>" \
--identity="<YOUR_KEYBASE_ID>" \
--details="<YOUR_DETAILS>" \
--website="<YOUR_WEBSITE_URL>"
--chain-id entangle_33133-1 \
--commission-rate="0.10" \
--from=<WALLET_NAME> -y
Unjail
entangled tx slashing unjail --from <WALLET_NAME> --chain-id entangle_33133-1 -y
Jail reason
entangled query slashing signing-info $(entangled tendermint show-validator)
Active validators
entangled q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_BONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " \t " + .description.moniker' | sort -gr | nl
Inactive validators
entangled q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_UNBONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " \t " + .description.moniker' | sort -gr | nl
Information about the validator
entangled q staking validator $(entangled keys show <WALLET_NAME> --bech val -a)
Balance management
Withdrawal of all rewards
entangled tx distribution withdraw-all-rewards --from <WALLET_NAME> --chain-id entangle_33133-1 -y
Withdrawal of rewards and commissions
entangled tx distribution withdraw-rewards $(entangled keys show <WALLET_NAME> --bech val -a) --commission --from <WALLET_NAME> --chain-id entangle_33133-1 -y
Self-delegation
entangled tx staking delegate $(entangled keys show <WALLET_NAME> --bech val -a) 1000000aNGL --from <WALLET_NAME> --chain-id entangle_33133-1 -y
Delegation to validator
entangled tx staking delegate <TO_VALOPER_ADDRESS> 1000000aNGL --from <WALLET_NAME> --chain-id entangle_33133-1 -y
Redelegation to another validator
entangled tx staking redelegate $(entangled keys show <WALLET_NAME> --bech val -a) <TO_VALOPER_ADDRESS> 1000000aNGL --from <WALLET_NAME> --chain-id entangle_33133-1 -y
Unbond tokens
entangled tx staking unbond $(entangled keys show <WALLET_NAME> --bech val -a) 1000000aNGL --from <WALLET_NAME> --chain-id entangle_33133-1 -y
Sending tokens to a wallet
entangled tx bank send <WALLET_NAME> <TO_WALLET_ADDRESS> 1000000aNGL --from <WALLET_NAME> --chain-id entangle_33133-1
Governance
All proposals
entangled query gov proposals
All proposals by ID
entangled query gov proposal 1
Vote "YES"
entangled tx gov vote 1 yes --from <WALLET_NAME> --chain-id entangle_33133-1 -y
Vote "NO"
entangled tx gov vote 1 no --from <WALLET_NAME> --chain-id entangle_33133-1 -y
Vote "Abstain"
entangled tx gov vote 1 abstain --from <WALLET_NAME> --chain-id entangle_33133-1 -y
Vote "NoWithVeto"
entangled tx gov vote 1 nowithveto --from <WALLET_NAME> --chain-id entangle_33133-1 -y
Utility
Update ports
CUSTOM_PORT=10
sed -i.bak -e "s%^proxy_app = \"tcp://127.0.0.1:26658\"%proxy_app = \"tcp://127.0.0.1:${CUSTOM_PORT}658\"%; s%^laddr = \"tcp://127.0.0.1:26657\"%laddr = \"tcp://127.0.0.1:${CUSTOM_PORT}657\"%; s%^pprof_laddr = \"localhost:6060\"%pprof_laddr = \"localhost:${CUSTOM_PORT}060\"%; s%^laddr = \"tcp://0.0.0.0:26656\"%laddr = \"tcp://0.0.0.0:${CUSTOM_PORT}656\"%; s%^prometheus_listen_addr = \":26660\"%prometheus_listen_addr = \":${CUSTOM_PORT}660\"%" $HOME/.entangled/config/config.toml
sed -i.bak -e "s%^address = \"tcp://0.0.0.0:1317\"%address = \"tcp://0.0.0.0:${CUSTOM_PORT}317\"%; s%^address = \":8080\"%address = \":${CUSTOM_PORT}080\"%; s%^address = \"0.0.0.0:9090\"%address = \"0.0.0.0:${CUSTOM_PORT}090\"%; s%^address = \"0.0.0.0:9091\"%address = \"0.0.0.0:${CUSTOM_PORT}091\"%" $HOME/.entangled/config/app.toml
Disable Indexer
sed -i 's|^indexer *=.*|indexer = "null"|' $HOME/.entangled/config/config.toml
Enable Indexer
sed -i 's|^indexer *=.*|indexer = "kv"|' $HOME/.entangled/config/config.toml
Update pruning
sed -i.bak -e 's|^pruning *=.*|pruning = "custom"|; s|^pruning-keep-recent *=.*|pruning-keep-recent = "100"|; s|^pruning-keep-every *=.*|pruning-keep-every = "0"|; s|^pruning-interval *=.*|pruning-interval = "10"|' $HOME/.entangled/config/app.toml
Node support
Validator Info
entangled status 2>&1 | jq .ValidatorInfo
Sync info
entangled status 2>&1 | jq .SyncInfo
Deleting a node
Before deleting a node make sure you save priv_validator_key.json
sudo systemctl stop entangled
sudo systemctl disable entangled
rm /etc/systemd/system/entangled.service
sudo systemctl daemon-reload
cd $HOME
rm -rf entangle-blockchain
rm -rf .entangled
rm -rf $(which entangled)
Service setup
Reload service configuration
sudo systemctl daemon-reload
Enable service
sudo systemctl enable entangled
Disable service
sudo systemctl disable entangled
Start service
sudo systemctl start entangled
Stop service
sudo systemctl stop entangled
Restart service
sudo systemctl restart entangled
Check service status
sudo systemctl status entangled
Check service logs
sudo journalctl -u entangled -f --no-hostname -o cat
Last updated