Betalingsmåter Abuse

Ojo. Installere noden

09.09.2024, 18:15

Ojo er et sikkerhetsfokusert desentralisert orakelnettverk som er utviklet for å støtte Cosmos-økosystemet. Ojo samler inn prisdata fra en rekke kilder, både i og utenfor kjeden, og bruker avanserte sikkerhetsmekanismer for å sikre integriteten til dataene som leveres.

Minimumskrav til maskinvare

Node-type

CPU

RAM

Lagringsplass

Testnet

4

8 GB

150 GB

Automatisk installasjonsskript

wget -O ojjo https://raw.githubusercontent.com/111STAVR111/props/main/Ojo/ojjo && chmod +x ojjo && ./ojjo

Manuell installasjon

Klargjøring av server

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 -y

Installasjon av 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

Bygg 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

Initialisering

ojod init STAVR_guide --chain-id=ojo-devnet
ojod config chain-id ojo-devnet

Opprett/gjenopprett lommebok

ojod keys add <lommeboknavn>
eller
ojod keys add <lommeboknavn> --gjenopprett

Laster inn 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

Konfigurere minste gasspris, Peers/Sids/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

Innstilling av beskjæring (valgfritt)

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

Oppsett av indekser (valgfritt)

indexer="null" &&
sed -i -e "s/^indexer *=.*/indexer = "$indexer"/" $HOME/.ojo/config/config.toml

Laste opp addrbook

wget -O $HOME/.ojo/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Ojo/addrbook.json"

Opprette en tjenestefil

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
EOF

StateSync for Ojo Testnet

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 cat

SnapShot Testnet oppdateres hver 5. time

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

Oppstart

sudo systemctl daemon-reload
sudo systemctl enable ojod 
sudo systemctl restart ojod && sudo journalctl -fu ojod -o cat

Opprette validator

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

Slette en node

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)

Nyttige kommandoer

Informasjon

ojod status 2>&1 | jq .NodeInfo
ojod status 2>&1 | jq .SyncInfo
ojod status 2>&1 | jq .ValidatorInfo

Sjekk logger

sudo journalctl -fu ojod -o cat

Sjekk tjenestens status

sudo systemctl status ojod

Start tjenesten på nytt

sudo systemctl restart ojod

Stoppe tjenesten

sudo systemctl stop ojod

Start av tjeneste

sudo systemctl start ojod

Starte tjenesten på nytt/deaktivere/avbryte tjenesten

sudo systemctl daemon-reload
sudo systemctl disable ojod 
sudo systemctl enable ojod

Din kollega

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/".*//')

Arbeide med nøkler

Ny nøkkel eller gjenoppretting av nøkkel

ojod keys add Wallet_Name
или
ojod  keys add Wallet_Name --recover

Sjekke alle nøkler

ojod keys list

Saldosjekk

ojod query bank balances address....jkl1yjgn7z09ua9vms259j

Slette en nøkkel

ojod keys delete Wallet_Name

Eksportere nøkkel

ojod keys export wallet

Importere nøkkel

ojod keys import wallet wallet.backup

Arbeide med validator

Rediger validator

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

Din Valoper-adresse

ojod keys show Wallet_Name --bech val

Valcons-adressen din

ojod tendermint show-address

Informasjon om validator

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

Liste over aktive validatorer

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

Liste over inaktive validatorer

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

Validering mot nøkkelen (Vinn - bra. Tap - dårlig)

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"

Skriv ut alle belønninger fra alle validatorer

ojod tx distribution withdraw-all-rewards --from Wallet_Name --chain-id ojo-devnet --gas 350000 -y

Utdata av belønninger og provisjon fra din validator

ojod tx distribution withdraw-rewards valoper1amxp0k0hg4edrxg85v07t9ka2tfuhamhldgf8e --from Wallet_Name --gas 350000 --fees "7000"uojo --chain-id=ojo-devnet --commission -y

Delegering av tokens til din validator

ojod tx staking delegate Your_valoper........ "100000000"uojo --from Wallet_Name --gas 350000 --fees "7000"uojo --chain-id=ojo-devnet -y

Delegering av tokens til en annen validator

ojod tx staking delegate valoper........ "100000000"uojo --from Wallet_Name --gas 350000 --fees "7000"uojo --chain-id=ojo-devnet -y

Re-delegering av tokens til en annen validator

ojod tx staking redelegate Your_valoper........ valoper........ "100000000"uojo --from Wallet_Name --gas 350000 --fees "7000"uojo --chain-id=ojo-devnet -y

Anbonding av tokens fra din validator eller en annen validator

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

Overføring av tokens fra en lommebok til en annen.

ojod tx bank send Your_address............ address........... "1000000000000000000"uojo --gas 350000 --fees "7000"uojo --chain-id=ojo-devnet -y

Administrasjon

Vis alle tilbud

ojod query gov proposals

Se et spesifikt forslag

ojod query gov proposal 1

Stemme for et forslag

ojod tx gov vote 1 yes --from Wallet_Name --gas 350000 --fees "7000"uojo --chain-id=ojo-devnet -y

Stemme mot et forslag

ojod tx gov vote 1 no --from Wallet_Name --gas 350000 --fees "7000"uojo --chain-id=ojo-devnet -y

Avstå fra å stemme

ojod tx gov vote 1 abstain --from Wallet_Name --gas 350000 --fees "7000"uojo --chain-id=ojo-devnet -y

Stemme mot med vetorett

ojod tx gov vote 1 no_with_veto --from Wallet_Name --gas 350000 --fees "7000"uojo --chain-id=ojo-devnet -y