Betaalmethoden Abuse

Ojo. Het knooppunt installeren

09.09.2024, 18:15

Ojo is een op beveiliging gericht gedecentraliseerd orakelnetwerk dat is ontworpen om het Cosmos ecosysteem te ondersteunen. Ojo verzamelt prijsgegevens uit verschillende bronnen, zowel binnen als buiten de keten, en gebruikt geavanceerde beveiligingsmechanismen om de integriteit van de verstrekte gegevens te waarborgen.

Minimale hardware vereisten

Type node

CPU

RAM

Opslag

Testnet

4

8 GB

150GB

Automatisch installatiescript

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

Handmatige installatie

Server voorbereiding

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

Installatie 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

Build 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

Initialisatie

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

Maken/herstellen portemonnee

ojod sleutels toevoegen <walletnaam>
of
ojod sleutels toevoegen <walletnaam> --herstellen

Genesis laden

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

Minimale gasprijs configureren, 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

Snoeien instellen (optioneel)

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 instellen (optioneel)

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

Addrbook uploaden

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

Servicebestand aanmaken

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 voor 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 werkt elke 5 uur bij

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

Opstarten

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

Validator aanmaken

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

Een knooppunt verwijderen

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)

Nuttige commando's

Informatie

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

Logboeken controleren

sudo journalctl -fu ojod -o cat

Servicestatus controleren

sudo systemctl status ojod

Service herstarten

sudo systemctl restart ojod

De service stoppen

sudo systemctl stop ojod

De service starten

sudo systemctl start ojod

De service opnieuw starten/uitschakelen/onderbreken

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

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

Werken met sleutels

Nieuwe sleutel of sleutelherstel

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

Alle sleutels controleren

ojod keys list

Balans controleren

ojod query bank balances address....jkl1yjgn7z09ua9vms259j

Een sleutel verwijderen

ojod keys delete Wallet_Name

Sleutel exporteren

ojod keys export wallet

Sleutel importeren

ojod keys import wallet wallet.backup

Werken met validator

Validator bewerken

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

Je valoper-adres

ojod keys show Wallet_Name --bech val

Je Valcons-Adres

ojod tendermint show-address

Validator informatie

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

Lijst van actieve validators

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

Lijst van inactieve validators

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

Validatie tegen de sleutel (Win - Goed. Verlies - Slecht)

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"

Uitvoer van alle beloningen van alle validators

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

Output van beloningen en commissie van jouw validator

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

Delegeren van tokens aan je validator

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

Munten delegeren aan een andere validator

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

Opnieuw delegeren van tokens aan een andere validator

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

Verbinden van tokens van uw validator of een andere 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

Overdracht van tokens van de ene portemonnee naar de andere.

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

Beheer

Alle aanbiedingen bekijken

ojod query gov proposals

Een specifiek voorstel bekijken

ojod query gov proposal 1

Stemmen voor een voorstel

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

Tegen een voorstel stemmen

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

Onthouden van stemmen

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

Tegenstemmen met vetorecht

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