Maksājuma metodes Abuse

Jackal Labs. Mezgla instalēšana

16.09.2024, 18:52

Jackal Labs ir inovatīva platforma, kas specializējas blokķēdes tehnoloģiju un decentralizētu lietojumprogrammu risinājumu izstrādē. Uzņēmuma mērķis ir nodrošināt rīkus un resursus decentralizētu tīklu izveidei un pārvaldībai, kā arī piedāvā risinājumus, kas uzlabo blokķēdes projektu mērogojamību, drošību un efektivitāti.

Minimālās aparatūras prasības

Mezgla tips

PROCESORS

OPERATĪVĀ ATMIŅA

Uzglabāšanas vieta

Testnet

4

8 GB

150GB

Mezgla uzstādīšana

Automātiskā instalācija

wget -O jkltest https://raw.githubusercontent.com/111STAVR111/props/main/Jackal/Testnet/jkltest && chmod +x jkltest && ./jkltest

Manuālā instalēšana

Servera sagatavošana

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

Go 1.21.6 instalēšana

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

Jackal uzbūve

cd $HOME && mkdir $HOME/go/bin/
git clone https://github.com/JackalLabs/canine-chain && cd canine-chain
git checkout v4.0.0-beta.5
make install
canined version --long | head
Версия: 4.0.0-beta.5
Коммит: 05785bccff802e963d0c964434d38fc77833d4c3

Mezglu inicializācija

canined init STAVR_guide --chain-id=lupulella-2
canined config chain-id lupulella-2

Naudas maka izveide/atjaunošana

canined keys add <walletname>

VAI

canined keys add <walletname> --recover

Genesis ielādēšana

curl -s  "https://raw.githubusercontent.com/111STAVR111/props/main/Jackal/Testnet/genesis.json" > ~/.canine/config/genesis.json
sha256sum $HOME/.canine/config/genesis.json
SHA256: 9701001c2188abf7c117f7192030bcbab358ac1d5b1a61594f443d3b206ab5a2

Minimālās gāzes cenas un peeringa iestatīšana

sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = "0.0ujkl"/;" ~/.canine/config/app.toml
sed -i -e "s/^filter_peers *=.*/filter_peers = "true"/" $HOME/.canine/config/config.toml
external_address=$(wget -qO- eth0.me) 
sed -i.bak -e "s/^external_address *=.*/external_address = "$external_address:26656"/" $HOME/.canine/config/config.toml
peers=""
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = "$peers"/" $HOME/.canine/config/config.toml
seeds=""
sed -i.bak -e "s/^seeds =.*/seeds = "$seeds"/" $HOME/.canine/config/config.toml
sed -i 's/max_num_inbound_peers =.*/max_num_inbound_peers = 50/g' $HOME/.canine/config/config.toml
sed -i 's/max_num_outbound_peers =.*/max_num_outbound_peers = 50/g' $HOME/.canine/config/config.toml

Apgriešana (pēc izvēles)

pruning="custom"
pruning_keep_recent="1000"
pruning_keep_every="0"
pruning_interval="10"
sed -i -e "s/^pruning *=.*/pruning = "$pruning"/" $HOME/.canine/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = "$pruning_keep_recent"/" $HOME/.canine/config/app.toml
sed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = "$pruning_keep_every"/" $HOME/.canine/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = "$pruning_interval"/" $HOME/.canine/config/app.toml

Indeksētājs (pēc izvēles)

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

Addrbook ielāde

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

Pakalpojumu faila izveide

sudo tee /etc/systemd/system/canined.service > /dev/null <<EOF
[Unit]
Description=canined Testnet
After=network-online.target
[Service]
User=$USER
ExecStart=$(which canined) start
Restart=on-failure
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF

StateSync Jackal Testnet

SNAP_RPC=https://jkl.rpc.t.stavr.tech:443
peers="80613772b20df144945801b42f327d0945a24374@jkltest.peer.stavr.tech:19126"
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = "$peers"/" $HOME/.canine/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/.canine/config/config.toml
canined tendermint unsafe-reset-all --home /root/.canine
wget -O $HOME/.canine/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Jackal/Testnet/addrbook.json"
systemctl restart canined && journalctl -u canined -f -o cat

SnapShot Mainnet atjaunināts ik pēc 5 stundām

cd $HOME
apt install lz4
sudo systemctl stop canined
cp $HOME/.canine/data/priv_validator_state.json $HOME/.canine/priv_validator_state.json.backup
rm -rf $HOME/.canine/data
curl -o - -L https://jkltest.snapshot.stavr.tech/jackalt-snap.tar.lz4 | lz4 -c -d - | tar -x -C $HOME/.canine --strip-components 2
mv $HOME/.canine/priv_validator_state.json.backup $HOME/.canine/data/priv_validator_state.json
wget -O $HOME/.canine/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Jackal/Testnet/addrbook.json"
sudo systemctl restart canined && journalctl -u canined -f -o cat

Startup

sudo systemctl daemon-reload
sudo systemctl enable canined 
sudo systemctl restart canined && sudo journalctl -u canined -f -o cat

Izveidot validatoru

canined tx staking create-validator 
  --amount 1000000ujkl 
  --from <walletName> 
  --commission-max-change-rate "0.1" 
  --commission-max-rate "0.2" 
  --commission-rate "0.1" 
  --min-self-delegation "1" 
  --pubkey  $(canined tendermint show-validator) 
  --moniker STAVR_guide 
  --chain-id lupulella-2 
  --identity="" 
  --details="" 
  --website="" -y

Dzēst mezglu

sudo systemctl stop canined
sudo systemctl disable canined
rm /etc/systemd/system/canined.service
sudo systemctl daemon-reload
cd $HOME
rm -rf canine-chain
rm -rf .canine
rm -rf $(which canined)

Noderīgas komandas Jackal mezgla pārvaldībai

Pakalpojumu komandas

Informācija par mezglu:

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

Skatiet mezgla žurnālus:

sudo journalctl -fu canined -o cat

Pārbaudīt pakalpojuma statusu:

sudo systemctl status canined

Pārstartēt pakalpojumu:

sudo systemctl restart canined

Apstādināt pakalpojumu:

sudo systemctl stop canined

Sākt pakalpojumu:

sudo systemctl start canined

Atjaunināt/izslēgt/atļaut/ieslēgt pakalpojumu:

sudo systemctl daemon-reload
sudo systemctl disable canined
sudo systemctl enable canined

Jūsu svētki:

echo $(canined tendermint show-node-id)'@'$(wget -qO- eth0.me)':'$(cat $HOME/.canine/config/config.toml | sed -n '/Address to listen for incoming connection/{n;p;}' | sed 's/.*://; s/".*//')

Atslēgu pārvaldība

Izveidot vai atjaunot atslēgu:

canined keys add Wallet_Name

Vai atjaunot

canined keys add Wallet_Name --recover

Pārbaudiet visas atslēgas:

canined keys list

Pārbaudiet līdzsvaru:

canined query bank balances адрес_jkl…

Izdzēst atslēgu:

canined keys delete Wallet_Name

Eksportēt atslēgu:

canined keys export wallet

Importa atslēga:

canined keys import wallet wallet.backup

Pārvaldīt validatoru

Rediģēt validatoru:

canined tx staking edit-validator 
--new-moniker "Your_Moniker" 
--identity "Keybase_ID" 
--details "Your_Description" 
--website "Your_Website" 
--security-contact "Your_Email" 
--chain-id jackal-1 
--commission-rate 0.05 
--from Wallet_Name 
--gas 350000 -y

Validatora adrese:

canined keys show Wallet_Name --bech val

Validatora adrese: Jūsu validatora adrese:

canined tendermint show-address

Validatora informācija:

canined query staking validator valoper_address…

Informācija par cietumu:

canined query slashing signing-info $(canined tendermint show-validator)

Atbrīvošana no ieslodzījuma:

canined tx slashing unjail --from Wallet_Name --chain-id jackal-1 --gas 350000 -y

Aktīvu validatoru saraksts:

canined 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

Neaktīvo validatoru saraksts:

canined 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

Validatora atslēga:

VALOPER=Ваш_valoper
[[ $(canined q staking validator $VALOPER -oj | jq -r .consensus_pubkey.key) = $(canined status | jq -r .ValidatorInfo.PubKey.value) ]] && echo -e "nYou winn" || echo -e "nYou losen"

Izvadīt visas atlīdzības:

canined tx distribution withdraw-all-rewards --from Wallet_Name --chain-id jackal-1 --gas 350000 -y

Izvadīt validatora komisijas maksu:

canined tx distribution withdraw-rewards valoper1... --from Wallet_Name --gas 350000 --chain-id=jackal-1 --commission -y

Žetonu deleģēšana:

canined tx staking delegate Your_valoper "100000000"ujkl --from Wallet_Name --gas 350000 --chain-id=jackal-1 -y

Žetonu atkārtota deleģēšana:

canined tx staking redelegate Your_valoper valoper_другого_валидатора "100000000"ujkl --from Wallet_Name --gas 350000 --chain-id=jackal-1 -y

Žetonu deleģēšana:

canined tx staking unbond Your_valoper "100000000"ujkl --from Wallet_Name --gas 350000 --chain-id=jackal-1 -y

Balsošana (pārvaldība)

Apskatīt visus priekšlikumus:

canined query gov proposals

Pārskatīt konkrētu priekšlikumu:

canined query gov proposal 1

Balsot par:

canined tx gov vote 1 yes --from Wallet_Name --gas 350000 --chain-id jackal-1 -y

Balsot pret:

canined tx gov vote 1 no --from Wallet_Name --gas 350000 --chain-id jackal-1 -y

Balsot par: balsot pret: Atturēties:

canined tx gov vote 1 abstain --from Wallet_Name --gas 350000 --chain-id jackal-1 -y

Balsot pret ar veto:

canined tx gov vote 1 no_with_veto --from Wallet_Name --gas 350000 --chain-id jackal-1 -y

IBC pārcelšana

Piemērs par pārcelšanu no Jackal uz Osmosis:

canined tx ibc-transfer transfer transfer channel-2 Your_OSMOaddress "100000"ujkl --from Your_Jackal_Wallet_Name --gas 350000 --chain-id=jackal-1 -y