Ojo — Космос экожүйесін қолдауға арналған орталықтандырылмаған, қауіпсіздікке бағытталған oracle желісі. Ojo желідегі және тізбектен тыс әртүрлі көздерден баға деректерін жинайды және берілген деректердің тұтастығын қамтамасыз ету үшін кеңейтілген қауіпсіздік механизмдерін пайдаланады.
Ең аз аппараттық талаптар
Түйін түрі | CPU | Жедел Жадтау Құрылғысы | Сақтау |
Testnet | 4 | 8 ГБ | 150 ГБ |
Автоматты орнату сценарийі
wget -O ojjo https://raw.githubusercontent.com/111STAVR111/props/main/Ojo/ojjo && chmod +x ojjo && ./ojjoҚолмен орнату
Серверді дайындау
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 git jq chrony liblz4-tool -yGO 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
Ассамблея 06.03.23
cd $HOME && mkdir $HOME/go/bin/ git clone https://github.com/ojo-network/ojo cd ojo git checkout v0.1.2 make install ojod version --long | grep -e version -e commit version: HEAD-ad5a2377134aa13d7d76575b95613cf8ed12d1e4 commit: ad5a2377134aa13d7d76575b95613cf8ed12d1e4Инициализация
ojod init STAVR_guide --chain-id=ojo-devnet
ojod config chain-id ojo-devnet
Әмиянды жасау/қалпына келтіру
ojod keys add <walletname>
или
ojod keys add <walletname> --recover
Genesis жүктелуде
wget -O $HOME/.ojo/config/genesis.json "https://raw.githubusercontent.com/111STAVR111/props/main/Ojo/genesis.json" sha256sum $HOME/.ojo/config/genesis.json 6037d1c1a89110c024fc18143eafe33fee19671b9427a4d4ac9c701f7a3c9309Ең төменгі газ бағасын орнату, Peers/Seeds/Peer filter/MaxPeers
sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = "0.0uojo"/;" ~/.ojo/config/app.toml external_address=$(wget -qO- eth0.me) sed -i.bak -e "s/^external_address *=.*/external_address = "$external_address:26656"/" $HOME/.ojo/config/config.toml peers="" sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = "$peers"/" $HOME/.ojo/config/config.toml seeds="" sed -i.bak -e "s/^seeds =.*/seeds = "$seeds"/" $HOME/.ojo/config/config.toml sed -i 's/max_num_inbound_peers =.*/max_num_inbound_peers = 50/g' $HOME/.ojo/config/config.toml sed -i 's/max_num_outbound_peers =.*/max_num_outbound_peers = 50/g' $HOME/.ojo/config/config.tomlКесуді орнату (міндетті емес)
pruning="custom" pruning_keep_recent="100" pruning_keep_every="0" pruning_interval="10" sed -i -e "s/^pruning *=.*/pruning = "$pruning"/" $HOME/.ojo/config/app.toml sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = "$pruning_keep_recent"/" $HOME/.ojo/config/app.toml sed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = "$pruning_keep_every"/" $HOME/.ojo/config/app.toml sed -i -e "s/^pruning-interval *=.*/pruning-interval = "$pruning_interval"/" $HOME/.ojo/config/app.tomlНастройка Indexer (по желанию)
indexer="null" && sed -i -e "s/^indexer *=.*/indexer = "$indexer"/" $HOME/.ojo/config/config.tomlЗагрузка adrbook
wget -O $HOME/.ojo/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Ojo/addrbook.json"Создание файла сервиса
sudo tee /etc/systemd/system/ojod.service > /dev/null <<EOF [Unit] Description=ojo After=network-online.target [Service] User=$USER ExecStart=$(which ojod) start Restart=on-failure RestartSec=3 LimitNOFILE=65535 [Install] WantedBy=multi-user.target EOFOjo Testnet үшін StateSync
SNAP_RPC=https://ojo.rpc.t.stavr.tech:443 peers="1f091cf9567c0d72a0f93877007379e0298b8860@ojo.peer.stavr.tech:37096" sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = "$peers"/" $HOME/.ojo/config/config.toml LATEST_HEIGHT=$(curl -s $SNAP_RPC/block | jq -r .result.block.header.height); BLOCK_HEIGHT=$((LATEST_HEIGHT - 100)); 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/.ojo/config/config.toml ojod tendermint unsafe-reset-all --home /root/.ojo wget -O $HOME/.ojo/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Ojo/addrbook.json" sed -i -e "s/^snapshot-interval *=.*/snapshot-interval = "1500"/" $HOME/.ojo/config/app.toml sudo systemctl restart ojod && journalctl -fu ojod -o catSnapShot Testnet 5 сағатқа созылады
cd $HOME apt install lz4 sudo systemctl stop ojod cp $HOME/.ojo/data/priv_validator_state.json $HOME/.ojo/priv_validator_state.json.backup rm -rf $HOME/.ojo/data curl -o - -L https://ojo.snapshot.stavr.tech/ojo-snap.tar.lz4 | lz4 -c -d - | tar -x -C $HOME/.ojo --strip-components 2 mv $HOME/.ojo/priv_validator_state.json.backup $HOME/.ojo/data/priv_validator_state.json wget -O $HOME/.ojo/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Ojo/addrbook.json" sudo systemctl restart ojod && journalctl -fu ojod -o catЗапуск
sudo systemctl daemon-reload sudo systemctl enable ojod sudo systemctl restart ojod && sudo journalctl -fu ojod -o catСоздание валидатора
ojod tx staking create-validator --amount 1000000uojo --from WalletName --commission-max-change-rate "0.1" --commission-max-rate "0.2" --commission-rate "0.1" --min-self-delegation "1" --pubkey $(ojod tendermint show-validator) --moniker "STAVR_guide" --chain-id ojo-devnet --identity="" --details="" --website="" -yудаление ноды
sudo systemctl stop ojod sudo systemctl disable ojod rm /etc/systemd/system/ojod.service sudo systemctl daemon-reload cd $HOME rm -rf ojo rm -rf .ojo rm -rf $(which ojod)Полезные команды
Ақпарат
ojod status 2>&1 | jq .NodeInfo ojod status 2>&1 | jq .SyncInfo ojod status 2>&1 | jq .ValidatorInfoПроверка логов
sudo journalctl -fu ojod -o catҮйіңізге қараңыз
sudo systemctl status ojodОқығаныңыз үшін рахмет
sudo systemctl restart ojodОстановка сервиса
sudo systemctl stop ojodЗапуск сервиса
sudo systemctl start ojodПерезауск/Отключение/Включение
sudo systemctl daemon-reload sudo systemctl disable ojod sudo systemctl enable ojodВаш Peer
echo $(ojod tendermint show-node-id)'@'$(wget -qO- eth0.me)':'$(cat $HOME/.ojo/config/config.toml | sed -n '/Address to listen for incoming connection/{n;p;}' | sed 's/.*://; s/".*//')Кілттермен жұмыс
Жаңа кілт немесе кілтті қалпына келтіру
ojod keys add Wallet_Name или ojod keys add Wallet_Name --recoverБарлық кілттерді тексеру
ojod keys listБалансты тексеріңіз
ojod query bank balances address....jkl1yjgn7z09ua9vms259jКілтті алып тастау
ojod keys delete Wallet_NameЭкспорт кілті
ojod keys export walletКілтті импорттау
ojod keys import wallet wallet.backupВалидатормен жұмыс
Валидаторды өңдеу
ojod tx staking edit-validator --new-moniker "Your_Moniker" --identity "Keybase_ID" --details "Your_Description" --website "Your_Website" --security-contact "Your_Email" --chain-id ojo-devnet --commission-rate 0.05 --from Wallet_Name --gas 350000 -yСіздің Valoper-мекен-жайыңыз
ojod keys show Wallet_Name --bech valСіздің Вальконс-мекен-жайыңыз
ojod tendermint show-addressВалидатор туралы ақпарат
ojod query staking validator valoperaddress...... Jail Info ojod query slashing signing-info $(ojod tendermint show-validator) Unjail ojod tx slashing unjail --from Wallet_name --chain-id ojo-devnet --gas 350000 -y
Белсенді валидаторлар тізімі
ojod 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Белсенді емес валидаторлар тізімі
ojod 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Кілттердің сәйкестігін тексеру (Жеңіс – Жақсы. Жеңілу – Жаман)
VALOPER=Enter_Your_valoper_Here [[ $(ojod q staking validator $VALOPER -oj | jq -r .consensus_pubkey.key) = $(ojod status | jq -r .ValidatorInfo.PubKey.value) ]] && echo -e "nYou winn" || echo -e "nYou losen"Барлық валидаторлардан барлық марапаттарды алып тастаңыз
ojod tx distribution withdraw-all-rewards --from Wallet_Name --chain-id ojo-devnet --gas 350000 -yВалидатордан сыйақылар мен комиссияларды алып тастаңыз
ojod tx distribution withdraw-rewards valoper1amxp0k0hg4edrxg85v07t9ka2tfuhamhldgf8e --from Wallet_Name --gas 350000 --fees "7000"uojo --chain-id=ojo-devnet --commission -yТокендерді валидаторға беру
ojod tx staking delegate Your_valoper........ "100000000"uojo --from Wallet_Name --gas 350000 --fees "7000"uojo --chain-id=ojo-devnet -yТокендерді басқа валидаторға беру
ojod tx staking delegate valoper........ "100000000"uojo --from Wallet_Name --gas 350000 --fees "7000"uojo --chain-id=ojo-devnet -yТокендерді басқа валидаторға ауыстыру
ojod tx staking redelegate Your_valoper........ valoper........ "100000000"uojo --from Wallet_Name --gas 350000 --fees "7000"uojo --chain-id=ojo-devnet -yВалидатордан немесе басқа валидатордан таңбалауыштарды ажырату
ojod tx staking unbond Your_valoper........ "100000000"uojo --from Wallet_Name --gas 350000 --fees "7000"uojo --chain-id=ojo-devnet -y ojod tx staking unbond valoper........ "100000000"uojo --from Wallet_Name --gas 350000 --fees "7000"uojo --chain-id=ojo-devnet -yТокендерді бір әмияннан екіншісіне ауыстыру
ojod tx bank send Your_address............ address........... "1000000000000000000"uojo --gas 350000 --fees "7000"uojo --chain-id=ojo-devnet -yБасқару
Барлық ұсыныстарды көру
ojod query gov proposalsБелгілі бір ұсынысты қараңыз
ojod query gov proposal 1Ұсынысқа дауыс беріңіз
ojod tx gov vote 1 yes --from Wallet_Name --gas 350000 --fees "7000"uojo --chain-id=ojo-devnet -yҰсынысқа қарсы дауыс беру
ojod tx gov vote 1 no --from Wallet_Name --gas 350000 --fees "7000"uojo --chain-id=ojo-devnet -yДауыс беруден қалыс қалу
ojod tx gov vote 1 abstain --from Wallet_Name --gas 350000 --fees "7000"uojo --chain-id=ojo-devnet -yВето құқығымен қарсы дауыс беру
ojod tx gov vote 1 no_with_veto --from Wallet_Name --gas 350000 --fees "7000"uojo --chain-id=ojo-devnet -y