Source Network und die Decentralised Data (D2) Foundation, die physische Verkörperung des Ökosystems, setzen sich aus WEB3-Entwicklern zusammen, die sich für die Demokratisierung von Daten einsetzen. Das Netzwerk wurde auf der Grundlage der Idee einer sozialen Bewegung gegründet, die den Nutzern durch Datenschutz, Sicherheit und Zustimmung die Kontrolle zurückgibt.
Node-Typ: Testnet.
CPU: 4.
RAM: 8 GB.
Speicherplatz: 150 GB.
wget -O sources https://raw.githubusercontent.com/111STAVR111/props/main/Source/Testnet/sources && chmod +x sources && ./sources
Vorbereitung des Servers
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
Installation von 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
Version 01.08.24
cd $HOME && mkdir $HOME/go/bin/
git clone https://github.com/Source-Protocol-Cosmos/source.git
cd ~/source
git checkout v.3.0.2
make install
Installation
sourced init STAVR_guide --chain-id=source-1
sourced config chain-id source-1
Wallet erstellen/wiederherstellen
sourced keys add <walletname>
ODER
sourced keys add <walletname> --recover
Genesis installieren
curl -s https://raw.githubusercontent.com/Source-Protocol-Cosmos/testnets/master/sourcetest-1/genesis.json > ~/.source/config/genesis.json
Mindestgaspreis und Peers/Seeds einrichten
sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = "0.25usource"/;" ~/.source/config/app.toml
external_address=$(wget -qO- eth0.me)
sed -i.bak -e "s/^external_address *=.*/external_address = "$external_address:26656"/" $HOME/.source/config/config.toml
peers=""
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = "$peers"/" $HOME/.source/config/config.toml
seeds=""
sed -i.bak -e "s/^seeds =.*/seeds = "$seeds"/" $HOME/.source/config/config.toml
sed -i 's/max_num_inbound_peers =.*/max_num_inbound_peers = 50/g' $HOME/.source/config/config.toml
sed -i 's/max_num_outbound_peers =.*/max_num_outbound_peers = 50/g' $HOME/.source/config/config.toml
Beschneiden (optional)
pruning="custom"
pruning_keep_recent="1000"
pruning_keep_every="0"
pruning_interval="100"
sed -i -e "s/^pruning *=.*/pruning = "$pruning"/" $HOME/.source/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = "$pruning_keep_recent"/" $HOME/.source/config/app.toml
sed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = "$pruning_keep_every"/" $HOME/.source/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = "$pruning_interval"/" $HOME/.source/config/app.toml
Indexer (optional)
indexer="null" &&
sed -i -e "s/^indexer *=.*/indexer = "$indexer"/" $HOME/.source/config/config.toml
Installieren von addrbook
wget -O $HOME/.source/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Source/Testnet/addrbook.json"
Erstellen einer Servicedatei
sudo tee /etc/systemd/system/sourced.service > /dev/null <<EOF
[Unit]
Description=source test
After=network-online.target
[Service]
User=$USER
ExecStart=$(which sourced) start
Restart=on-failure
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
SnapShot Testnet wird alle 5 Stunden aktualisiert
cd $HOME
sudo systemctl stop sourced
cp $HOME/.source/data/priv_validator_state.json $HOME/.source/priv_validator_state.json.backup
rm -rf $HOME/.source/data
curl -o - -L https://source-t.snapshot.stavr.tech/source-snap.tar.lz4 | lz4 -c -d - | tar -x -C $HOME/.source --strip-components 2
curl -o - -L https://source-t.wasm.stavr.tech/wasm-snap.tar.lz4 | lz4 -c -d - | tar -x -C $HOME/.source/data --strip-components 3
mv $HOME/.source/priv_validator_state.json.backup $HOME/.source/data/priv_validator_state.json
wget -O $HOME/.source/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Source/addrbook.json"
sudo systemctl restart sourced && journalctl -u sourced -f -o cat
Starten von
sudo systemctl daemon-reload
sudo systemctl enable sourced
sudo systemctl restart sourced && sudo journalctl -fu sourced -o cat
Validator erstellen
sourced tx staking create-validator
--amount=1000000usource
--pubkey=$(sourced tendermint show-validator)
--moniker=STAVR_guide
--chain-id=sourcetest-1
--commission-rate="0.10"
--commission-max-rate="0.20"
--commission-max-change-rate="0.1"
--min-self-delegation="1"
--fees=100usource
--from=<walletName>
--identity=""
--website=""
--fees 5000usource
--details="" -y
Löschung eines Knotens
sudo systemctl stop sourced
sudo systemctl disable sourced
rm /etc/systemd/system/sourced.service
sudo systemctl daemon-reload
cd $HOME
rm -rf .source
rm -rf source
rm -rf $(which sourced)
Informationen
sourced status 2>&1 | jq .NodeInfo
sourced status 2>&1 | jq .SyncInfo
sourced status 2>&1 | jq .ValidatorInfo
Knotenprotokolle prüfen
sudo journalctl -fu sourced -o cat
Dienststatus prüfen
sudo systemctl status sourced
Dienst neu starten
sudo systemctl restart sourced
Den Dienst stoppen
sudo systemctl stop sourced
Start des Dienstes
sudo systemctl start sourced
Neustart/Herunterfahren/Aktivieren
sudo systemctl daemon-reload
sudo systemctl disable sourced
sudo systemctl enable sourced
Ihr Peer
echo $(sourced tendermint show-node-id)'@'$(wget -qO- eth0.me)':'$(cat $HOME/.source/config/config.toml | sed -n '/Address to listen for incoming connection/{n;p;}' | sed 's/.*://; s/".*//')
Neuer Schlüssel oder Schlüssel wiederherstellen
sourced keys add Wallet_Name
ODER
sourced keys add Wallet_Name --recover
Alle Schlüssel prüfen
sourced keys list
Gleichgewicht prüfen
sourced query bank balances address....jkl1yjgn7z09ua9vms259j
Löschen eines Keys
sourced keys delete Wallet_Name
Schlüssel exportieren
sourced keys export wallet
Schlüssel importieren
sourced keys import wallet wallet.backup
Validator bearbeiten
sourced tx staking edit-validator
--new-moniker "Your_Moniker"
--identity "Keybase_ID"
--details "Your_Description"
--website "Your_Website"
--security-contact "Your_Email"
--chain-id source-1
--commission-rate 0.05
--from Wallet_Name
--gas 350000
--fees "7000"usource -y
Ihre Valope-Adresse
sourced keys show Wallet_Name --bech val
Ihre Valcon-Adresse
sourced tendermint show-address
Informationen über Ihren Validator
sourced query staking validator valoperaddress......
Gefängnis-Informationen
sourced query slashing signing-info $(sourced tendermint show-validator)
Gefängnis aufheben
sourced tx slashing unjail --from Wallet_name --chain-id source-1 --gas 350000 --fees "7000"usource -y
Liste der aktiven Validierer
sourced 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 der inaktiven Validatoren
sourced 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
Prüfen Sie die Schlüssel gegen den Validator(Gewinnen
- gut. Verlieren
- schlecht).
VALOPER=Enter_Your_valoper_Here
[[ $(sourced q staking validator $VALOPER -oj | jq -r .consensus_pubkey.key) = $(sourced status | jq -r .ValidatorInfo.PubKey.value) ]] && echo -e "nYou winn" || echo -e "nYou losen"
Alle Belohnungen von allen Validatoren abheben
sourced tx distribution withdraw-all-rewards --from Wallet_Name --chain-id source-1 --gas 350000 --fees "7000"usource -y
Ziehen Sie Geld und Provisionen von Ihrem Validator ab
sourced tx distribution withdraw-rewards valoper1amxp0k0hg4edrxg85v07t9ka2tfuhamhldgf8e --from Wallet_Name --gas 350000 --fees "7000"usource --chain-id=source-1 --commission -y
Delegieren Sie Token an Ihren Validator
sourced tx staking delegate Your_valpoer........ "100000000"usource --from Wallet_Name --gas 350000 --fees "7000"usource --chain-id=source-1 -y
Delegieren Sie Token an einen anderen Prüfer
sourced tx staking delegate valpoer........ "100000000"usource --from Wallet_Name --gas 350000 --fees "7000"usource --chain-id=source-1 -y
Übertragung von Token von Wallet zu Wallet
sourced tx bank send Your_address............ address........... "1000000000000000000"usource --gas 350000 --fees "7000"usource --chain-id=source-1 -y
Alle Angebote ansehen
sourced query gov proposals
Einen bestimmten Vorschlag anzeigen
sourced query gov proposal 1
Für den Vorschlag stimmen
sourced tx gov vote 1 yes --from Wallet_Name --gas 350000 --fees "7000"usource --chain-id=source-1 -y
Dagegen stimmen
sourced tx gov vote 1 no --from Wallet_Name --gas 350000 --fees "7000"usource --chain-id=source-1 -y
Enthaltung
sourced tx gov vote 1 abstain --from Wallet_Name --gas 350000 --fees "7000"usource --chain-id=source-1 -y
Gegenstimmen mit Veto
sourced tx gov vote 1 no_with_veto --from Wallet_Name --gas 350000 --fees "7000"usource --chain-id=source-1 -y
IBC-Übertragung
sourced tx ibc-transfer transfer transfer channel-2 Your_OSMOaddress............ "100000"usource --from Your_Source_Wallet_Name ---gas 350000 --fees "70000"usource --chain-id=source-1 -y