Useful commands
Useful set of commands for node operators. From key management to chain governance.
Last updated
Useful set of commands for node operators. From key management to chain governance.
Last updated
Chain ID: osmosis-1 | Latest Version Tag: 26.0.1
osmosisd keys add wallet
osmosisd keys add wallet --recover
osmosisd keys list
osmosisd keys delete wallet
osmosisd keys export wallet
osmosisd keys import wallet wallet.backup
osmosisd q bank balances $(osmosisd keys show wallet -a)
osmosisd tx staking create-validator \
--amount=1000000 \
--pubkey=$(osmosisd tendermint show-validator) \
--moniker="YOUR_MONIKER_NAME" \
--identity="YOUR_KEYBASE_ID" \
--details="YOUR_DETAILS" \
--website="YOUR_WEBSITE_URL"
--chain-id=osmosis-1 \
--commission-rate=0.05 \
--commission-max-rate=0.20 \
--commission-max-change-rate=0.01 \
--min-self-delegation=1 \
--from=wallet \
--gas-adjustment=1.4 \
--gas=auto \
-y
osmosisd tx staking edit-validator \
--moniker="YOUR_MONIKER_NAME" \
--identity="YOUR_KEYBASE_ID" \
--details="YOUR_DETAILS" \
--website="YOUR_WEBSITE_URL"
--chain-id=osmosis-1 \
--commission-rate=0.05 \
--from=wallet \
--gas-adjustment=1.4 \
--gas=auto \
-y
osmosisd tx slashing unjail --from wallet --chain-id osmosis-1 --gas-adjustment 1.4 --gas auto -y
osmosisd query slashing signing-info $(osmosisd tendermint show-validator)
osmosisd 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
osmosisd 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
osmosisd q staking validator $(osmosisd keys show wallet --bech val
osmosisd tx distribution withdraw-all-rewards --from wallet --chain-id osmosis-1 --gas-adjustment 1.4 --gas auto -y
osmosisd tx distribution withdraw-rewards $(osmosisd keys show wallet --bech val -a) --commission --from wallet --chain-id osmosis-1 --gas-adjustment 1.4 --gas auto --y
osmosisd tx staking delegate $(osmosisd keys show wallet --bech val -a) 1000000 --from wallet --chain-id osmosis-1 --gas-adjustment 1.4 --gas auto -y
osmosisd tx staking delegate <TO_VALOPER_ADDRESS> 1000000.osmosisd --from wallet --chain-id osmosis-1 --gas-adjustment 1.4 --gas auto -y
osmosisd tx staking redelegate $(osmosisd keys show wallet --bech val <TO_VALOPER_ADDRESS> 1000000 --from wallet --chain-id osmosis-1 --gas-adjustment 1.4 --gas auto -y
osmosisd tx staking unbond $(osmosisd keys show wallet --bech val -a) 1000000 --from wallet --chain-id osmosis-1 --gas-adjustment 1.4 --gas auto -y
osmosisd tx bank send wallet <TO_WALLET_ADDRESS> 1000000 --from wallet --chain-id osmosis-1
osmosisd query gov proposals
osmosisd query gov proposal 1
osmosisd tx gov vote 1 yes --from wallet --chain-id osmosis-1 --gas-adjustment 1.4 --gas auto -y
osmosisd tx gov vote 1 no --from wallet --chain-id osmosis-1 --gas-adjustment 1.4 --gas auto -y
osmosisd tx gov vote 1 abstain --from wallet --chain-id osmosis-1 --gas-adjustment 1.4 --gas auto -y
osmosisd tx gov vote 1 nowithveto --from wallet --chain-id osmosis-1 --gas-adjustment 1.4 --gas auto -y
CUSTOM_PORT=125
sed -i -e "s%^proxy_app = \"tcp://127.0.0.1:26658\"%proxy_app = \"tcp://127.0.0.1:${CUSTOM_PORT}58\"%; s%^laddr = \"tcp://127.0.0.1:26657\"%laddr = \"tcp://127.0.0.1:${CUSTOM_PORT}57\"%; s%^pprof_laddr = \"localhost:6060\"%pprof_laddr = \"localhost:${CUSTOM_PORT}60\"%; s%^laddr = \"tcp://0.0.0.0:26656\"%laddr = \"tcp://0.0.0.0:${CUSTOM_PORT}56\"%; s%^prometheus_listen_addr = \":26660\"%prometheus_listen_addr = \":${CUSTOM_PORT}60\"%" $HOME/.osmosisd/config/config.toml
sed -i -e "s%^address = \"tcp://0.0.0.0:1317\"%address = \"tcp://0.0.0.0:${CUSTOM_PORT}17\"%; s%^address = \":8080\"%address = \":${CUSTOM_PORT}80\"%; s%^address = \"0.0.0.0:9090\"%address = \"0.0.0.0:${CUSTOM_PORT}90\"%; s%^address = \"0.0.0.0:9091\"%address = \"0.0.0.0:${CUSTOM_PORT}91\"%" $HOME/.osmosisd/config/app.toml
Disable indexer
sed -i -e 's|^indexer *=.*|indexer = "null"|' $HOME/.osmosisd/config/config.toml
Enable indexer
sed -i -e 's|^indexer *=.*|indexer = "kv"|' $HOME/.osmosisd/config/config.toml
sed -i \
-e 's|^pruning *=.*|pruning = "custom"|' \
-e 's|^pruning-keep-recent *=.*|pruning-keep-recent = "100"|' \
-e 's|^pruning-keep-every *=.*|pruning-keep-every = "0"|' \
-e 's|^pruning-interval *=.*|pruning-interval = "19"|' \
$HOME/.osmosisd/config/app.toml
osmosisd status 2>&1 | jq .ValidatorInfo
osmosisd status 2>&1 | jq .SyncInfo
echo $(osmosisd tendermint show-node-id)'@'$(curl -s ifconfig.me)':'$(cat $HOME/.osmosisd/config/config.toml | sed -n '/Address to listen for incoming connection/{n;p;}' | sed 's/.*://; s/".*//')
[[ $(osmosisd q staking validator $(osmosisd keys show wallet --bech val -a) -oj | jq -r .consensus_pubkey.key) = $(osmosisd status | jq -r .ValidatorInfo.PubKey.value) ]] && echo -e "\n\e[1m\e[32mTrue\e[0m\n" || echo -e "\n\e[1m\e[31mFalse\e[0m\n"
curl -sS http://localhost:26657/net_info | jq -r '.result.peers[] | "\(.node_info.id)@\(.remote_ip):\(.node_info.listen_addr)"' | awk -F ':' '{print $1":"$(NF)}'
sed -i -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"0.osmosisd\"/" $HOME/.osmosisd/config/app.toml
sed -i -e "s/prometheus = false/prometheus = true/" $HOME/.osmosisd/config/config.toml
osmosisd tendermint unsafe-reset-all --home $HOME/.osmosisd --keep-addr-book
Please, before proceeding with the next step! All chain data will be lost! Make sure you have backed up your priv_validator_key.json!
cd $HOME
sudo systemctl stop osmosisd
sudo systemctl disable osmosisd
sudo rm /etc/systemd/system/osmosisd.service
sudo systemctl daemon-reload
rm -f $(which osmosisd)
rm -rf $HOME/.osmosisd
rm -rf $HOME/osmosis
sudo systemctl daemon-reload
sudo systemctl enable osmosisd
sudo systemctl disable osmosisd
sudo systemctl start osmosisd
sudo systemctl stop osmosisd
sudo systemctl restart osmosisd
sudo systemctl status osmosisd
sudo journalctl -u osmosisd -f --no-hostname -o cat