Унионска мрежа је високо ефикасан слој инфраструктуре са нултим знањем за универзалну размену порука, трансфер имовине, NFT-ове и DeFi. Заснована је на консензусној верификацији и не ослања се на поуздане треће стране, вишеструке потписе или рачунарску вишестраначку криптографију.
Минимални системски захтеви:
Скрипта за инсталацију:
wget -O uniont https://raw.githubusercontent.com/111STAVR111/props/main/Union/uniont && chmod +x uniont && ./uniont
Припрема сервера:
sudo apt update && sudo apt upgrade -y sudo apt install curl tar wget clang pkg-config libssl-dev jq build-essential bsdmainutils git make ncdu gcc chrony liblz4-tool -y
Инсталирање Go 1.21.6:
ver="1.21.6" wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz" sudo rm -rf /usr/local/go sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz" rm "go$ver.linux-amd64.tar.gz" echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile source $HOME/.bash_profile go version
Верзија 10.06.24:
cd $HOME && mkdir -p go/bin/ wget https://uniont.binary.stavr.tech/union/uniond chmod +x uniond mv uniond $HOME/go/bin/ uniond --home $HOME/.union version --long
Иницијализација:
uniond --home $HOME/.union init STAVR_guide --chain-id union-testnet-8
Креирање или враћање новчаника:
uniond keys add <walletname>
ИЛИ
uniond keys add <walletname> --recover
Учитавање Генезиса:
wget -O $HOME/.union/config/genesis.json "https://raw.githubusercontent.com/111STAVR111/props/main/Union/genesis.json" sha256sum $HOME/.union/config/genesis.json
Одређивање минималне цене гаса и параметара прикључка:
sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = "0.0muno"/;" ~/.union/config/app.toml external_address=$(wget -qO- eth0.me) sed -i.bak -e "s/^external_address *=.*/external_address = "$external_address:26656"/" $HOME/.union/config/config.toml peers="" sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = "$peers"/" $HOME/.union/config/config.toml seeds="" sed -i.bak -e "s/^seeds =.*/seeds = "$seeds"/" $HOME/.union/config/config.toml sed -i 's/max_num_inbound_peers =.*/max_num_inbound_peers = 50/g' $HOME/.union/config/config.toml sed -i 's/max_num_outbound_peers =.*/max_num_outbound_peers = 10/g' $HOME/.union/config/config.toml
Скраћивање података (опционо):
pruning="custom" pruning_keep_recent="1000" pruning_keep_every="0" pruning_interval="10" sed -i -e "s/^pruning *=.*/pruning = "$pruning"/" $HOME/.union/config/app.toml sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = "$pruning_keep_recent"/" $HOME/.union/config/app.toml sed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = "$pruning_keep_every"/" $HOME/.union/config/app.toml sed -i -e "s/^pruning-interval *=.*/pruning-interval = "$pruning_interval"/" $HOME/.union/config/app.toml
Отклучение индексированиа (опционално):
indexer="null" sed -i -e "s/^indexer *=.*/indexer = "$indexer"/" $HOME/.union/config/config.toml
Преузимање адресне књиге:
wget -O $HOME/.union/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Union/addrbook.json"
Создание фајла служби:
sudo tee /etc/systemd/system/uniond.service > /dev/null <<EOF [Unit] Description=uniond After=network-online.target [Service] User=$USER ExecStart=$(which uniond) start --home /root/.union Restart=on-failure RestartSec=3 LimitNOFILE=65535 [Install] WantedBy=multi-user.target EOF
StateSync Union Testnet
SNAP_RPC=https://union.rpc.t.stavr.tech:443 peers="59d554ab6bee4d814afb3e15af4031df19b2084c@union-t.seed.stavr.tech:4256" sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = "$peers"/" $HOME/.union/config/config.toml LATEST_HEIGHT=$(curl -s $SNAP_RPC/block | jq -r .result.block.header.height); BLOCK_HEIGHT=$((LATEST_HEIGHT - 1000)); TRUST_HASH=$(curl -s "$SNAP_RPC/block?height=$BLOCK_HEIGHT" | jq -r .result.block_id.hash) echo $LATEST_HEIGHT $BLOCK_HEIGHT $TRUST_HASH sed -i.bak -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|1true| ; s|^(rpc_servers[[:space:]]+=[[:space:]]+).*$|1"$SNAP_RPC,$SNAP_RPC"| ; s|^(trust_height[[:space:]]+=[[:space:]]+).*$|1$BLOCK_HEIGHT| ; s|^(trust_hash[[:space:]]+=[[:space:]]+).*$|1"$TRUST_HASH"| ; s|^(seeds[[:space:]]+=[[:space:]]+).*$|1""|" $HOME/.union/config/config.toml uniond tendermint unsafe-reset-all --home /root/.union wget -O $HOME/.union/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Union/addrbook.json" systemctl restart uniond && journalctl -u uniond -f -o cat
Обновление снапшотов тестнета каждие 5 часов
cd $HOME apt install lz4 sudo systemctl stop uniond cp $HOME/.union/data/priv_validator_state.json $HOME/.union/priv_validator_state.json.backup rm -rf $HOME/.union/data curl -o - -L https://union-t.snapshot.stavr.tech/union-snap.tar.lz4 | lz4 -c -d - | tar -x -C $HOME/.union --strip-components 2 curl -o - -L https://union-t.wasm.stavr.tech/wasm-union.tar.lz4 | lz4 -c -d - | tar -x -C $HOME/.union --strip-components 2 mv $HOME/.union/priv_validator_state.json.backup $HOME/.union/data/priv_validator_state.json wget -O $HOME/.union/config/addrbook.json "https://raw.githubusercontent.com/obajay/nodes-Guides/main/Projects/Union/addrbook.json" sudo systemctl restart uniond && journalctl -u uniond -f -o cat
sudo systemctl daemon-reload sudo systemctl enable uniond sudo systemctl restart uniond && sudo journalctl -fu uniond -o cat
#pubkey uniond tendermint show-validator --home /root/.union cd $HOME nano validator.json { "pubkey": {#pubkey}, "amount": "1000000muno", "moniker": "STAVR_Guide", "identity": "", "website": "", "security": "", "details": "", "commission-rate": "0.1", "commission-max-rate": "0.2", "commission-max-change-rate": "0.1", "min-self-delegation": "1" } uniond --home /root/.union tx staking create-validator /root/validator.json --from Wallet_name --chain-id union
sudo systemctl stop uniond sudo systemctl disable uniond rm /etc/systemd/system/uniond.service sudo systemctl daemon-reload cd $HOME rm -rf .union rm -rf $(which uniond)
Проверить статус узла
uniond status 2>&1 | jq .NodeInfo uniond status 2>&1 | jq .SyncInfo uniond status 2>&1 | jq .ValidatorInfo
Преглед Нисам сигуран
sudo journalctl -fu uniond -o cat
Узмите најбоље од најбољих
sudo systemctl status uniond
Хвала на читању
sudo systemctl restart uniond
Остановка сервиса
sudo systemctl stop uniond
Запуст сервиса
sudo systemctl start uniond
Перезагрузка/отклучение/вклучение
sudo systemctl daemon-reload
sudo systemctl disable uniond
sudo systemctl enable uniond
Ваш вршњак
echo $(uniond tendermint show-node-id)'@'$(wget -qO- eth0.me)':'$(cat $HOME/.union/config/config.toml | sed -n '/Address to listen for incoming connection/{n;p;}' | sed 's/.*://; s/".*//')
Направите нови кључ или вратите постојећи
uniond keys add Wallet_Name
ИЛИ
uniond keys add Wallet_Name --recover
Провери све кључеве
uniond keys list
Провери стање
uniond query bank balances union...addressjkl1yjgn7z09ua9vms259j
Уреди валидатор
uniond tx staking edit-validator --new-moniker "Name" --identity "Keybase_ID" --details "Description" --website "Site" --security-contact "Email" --chain-id union-testnet-8 --commission-rate 0.05 --from Wallet_Name --gas 350000 -y
Ваша Valoper-адреса
uniond keys show Wallet_Name --bech val
Ваша Valcons-адреса
uniond tendermint show-address
Информације о валидатору
uniond query staking validator unionvaloperaddress......
Информације о затвору
uniond query slashing signing-info $(uniond tendermint show-validator)
Извући из затвора
uniond tx slashing unjail --from Wallet_Name --chain-id union-testnet-8 --gas 350000 -y
Листа активних валидатора
uniond 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
Листа неактивних валидатора
uniond 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
Проверите да ли се ваш кључ подудара са валидатором ( Win
- Добро. Lose
- Лоше)
VALOPER=Enter_Your_valoper_Here [[ $(uniond q staking validator $VALOPER -oj | jq -r .consensus_pubkey.key) = $(uniond status | jq -r .ValidatorInfo.PubKey.value) ]] && echo -e "nYou winn" || echo -e "nYou losen"
Повуците све награде од свих валидатора
uniond tx distribution withdraw-all-rewards --from Wallet_Name --chain-id union-testnet-8 --gas 350000 -y
Повуците награде и провизије са свог валидатора
uniond tx distribution withdraw-rewards unionvaloper1amxp0k0hg4edrxg85v07t9ka2tfuhamhldgf8e --from Wallet_Name --gas 350000 --chain-id=union-testnet-8 --commission -y
Делегирајте токене свом валидатору
uniond tx staking delegate unionvaloper........ "100000000"muno --from Wallet_Name --gas 350000 --chain-id=union-testnet-8 -y
Делегирајте токене другом валидатору
uniond tx staking delegate unionvaloper........ "100000000"muno --from Wallet_Name --gas 350000 --chain-id=union-testnet-8 -y
Прерасподела токена другом валидатору
uniond tx staking redelegate unionvaloper........ unionvaloper........ "100000000"muno --from Wallet_Name --gas 350000 --chain-id=union-testnet-8 -y
Одвајање токена од валидатора
uniond tx staking unbond unionvaloper........ "100000000"muno --from Wallet_Name --gas 350000 --chain-id=union-testnet-8 -y
Пренос токена из новчаника у новчаник
uniond tx bank send unionaddress............ unionaddress........... "1000000000000000000"muno --gas 350000 --chain-id=union-testnet-8 -y
Погледајте све понуде
uniond query gov proposals
Погледајте одређену понуду
uniond query gov proposal 1
Гласајте „за“
uniond tx gov vote 1 yes --from Wallet_Name --gas 350000 --chain-id=union-testnet-8 -y
Гласајте „против“
uniond tx gov vote 1 no --from Wallet_Name --gas 350000 --chain-id=union-testnet-8 -y
Уздржите се од гласања
uniond tx gov vote 1 abstain --from Wallet_Name --gas 350000 --chain-id=union-testnet-8 -y
Уклони слике из вета
uniond tx gov vote 1 no_with_veto --from Wallet_Name --gas 350000 --chain-id=union-testnet-8 -y
Детаљи: Унија -> Осмоза
uniond tx ibc-transfer transfer transfer channel-2 Your_OSMOaddress............ "100000"muno --from Your_Union_Wallet ---gas 350000 --fees 7000"muno" --chain-id=union-testnet-8 -y