Installer les dépendances
sudo apt update && sudo apt upgrade -y
sudo apt install original-awk uidmap dbus-user-session protobuf-compiler unzip -y
sudo apt install unzip
sudo apt install curl tar wget clang pkg-config libssl-dev libclang-dev -y
sudo apt install jq build-essential bsdmainutils git make ncdu gcc git jq chrony liblz4-tool -y
sudo apt install -y uidmap dbus-user-session
Installer Rust + NodeJS
cd
sudo apt update
sudo curl https://sh.rustup.rs -sSf | sh -s -- -y
. $HOME/.cargo/env
curl https://deb.nodesource.com/setup_18.x | sudo bash
sudo apt install cargo nodejs -y < "/dev/null"
Installer Golang
if ! [ -x "$(command -v go)" ]; then
ver="1.20.5"
cd $HOME
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" >> ~/.bash_profile
source ~/.bash_profile
fi
Installer Protoc compiler
cd
rustup update
PROTOC_ZIP=protoc-23.3-linux-x86_64.zip
curl -OL https://github.com/protocolbuffers/protobuf/releases/download/v23.3/$PROTOC_ZIP
sudo unzip -o $PROTOC_ZIP -d /usr/local bin/protoc
sudo unzip -o $PROTOC_ZIP -d /usr/local 'include/*'
rm -f $PROTOC_ZIP
Définir les variables
Remplacer en cas de mise à jour du réseau!!!
sed -i '/public-testnet/d' "$HOME/.bash_profile"
sed -i '/NAMADA_TAG/d' "$HOME/.bash_profile"
sed -i '/WALLET_ADDRESS/d' "$HOME/.bash_profile"
sed -i '/CBFT/d' "$HOME/.bash_profile"
echo "export NAMADA_TAG=v0.23.2" >> ~/.bash_profile
echo "export CBFT=v0.37.2" >> ~/.bash_profile
echo "export NAMADA_CHAIN_ID=public-testnet-14.5d79b6958580" >> ~/.bash_profile
echo "export WALLET=wallet" >> ~/.bash_profile
echo "export BASE_DIR=$HOME/.local/share/namada" >> ~/.bash_profile
echo "export VALIDATOR_ALIAS=NOM_DE_VOTRE_VALIDATEUR" >> ~/.bash_profile
source ~/.bash_profile
Télécharger + compiler Namada
cd
git clone https://github.com/anoma/namada
cd namada
git checkout $NAMADA_TAG
make build-release
cargo fix --lib -p namada_apps
Télécharger + compiler CometBFT
cd
git clone https://github.com/cometbft/cometbft.git
cd cometbft
git checkout $CBFT
make build
Copier les fichiers + vérifier les installations de Namada & CometBFT
cd $HOME && cp $HOME/cometbft/build/cometbft /usr/local/bin/cometbft && \
cp "$HOME/namada/target/release/namada" /usr/local/bin/namada && \
cp "$HOME/namada/target/release/namadac" /usr/local/bin/namadac && \
cp "$HOME/namada/target/release/namadan" /usr/local/bin/namadan && \
cp "$HOME/namada/target/release/namadaw" /usr/local/bin/namadaw && \
cp "$HOME/namada/target/release/namadar" /usr/local/bin/namadar
cometbft version
namada --version
Créer + enclencher le Service
sudo tee /etc/systemd/system/namadad.service > /dev/null <<EOF
[Unit]
Description=namada
After=network-online.target
[Service]
User=$USER
WorkingDirectory=$HOME/.local/share/namada
Environment=TM_LOG_LEVEL=p2p:none,pex:error
Environment=NAMADA_CMT_STDOUT=true
ExecStart=/usr/local/bin/namada node ledger run
StandardOutput=syslog
StandardError=syslog
Restart=always
RestartSec=10
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable namadad
Copier ses fichiers sauvegarde de validateur sur le nouveau VPS
Remplacer avec vos chemins d’accès!!!
scp -r /Users/NOM_UTILISATEUR/BUREAU/namada_backup root@adresse_IP_VPS:~/
Rejoindre le réseau à partir de ses fichiers de Validateur
Remplacer avec vos chemins d’accès!!!
namada client utils join-network --chain-id $CHAIN_ID --genesis-validator $VALIDATOR_ALIAS --pre-genesis-path ~/namada_backup/pre-genesis/nom_validateur
Relancer le service + checker si les logs sont OK (attendre la synchronisation ou télécharger un snapshot)
sudo systemctl restart namadad
sudo journalctl -u namadad -f -o cat
Télécharger un snapshot + relancer le service
sudo systemctl stop namadad
cd
wget -c https://snsmln.xyz/data.tar
sudo tar -xvf data.tar -C $HOME/.local/share/namada
sudo systemctl restart namadad
sudo journalctl -u namadad -f -o cat
Vérifier si le node est synchronisé (“catching up = false”)
curl -s localhost:26657/status
Vérifier son dernier vote de consensus
curl -s http://localhost:26657/dump_consensus_state | jq '.result.round_state.votes[0].prevotes' | grep $(curl -s http://localhost:26657/status | jq -r '.result.validator_info.address[:12]')
Vérifier l’uptime de son node
Remplacer avec vos chemins d’accès!!!
https://api.namadaexplorer.com/validator/{votre_addresse_de_validateur}/uptime
Check son ratio de signature des 50 derniers blocks
curl -sL "http://namada-blocksign.0xgen.online" | bash -s --