Files
trade-iac/doc/step-002d-snapshot-download-mainnet.txt

50 lines
1.6 KiB
Plaintext

Step 002D: Download snapshot (mainnet) do /var/lib/solana/ledger (wymagane na mainnet)
Objaw (bez snapshot):
Failed to start validator: ... did you forget to provide a snapshot
UWAGA:
- Snapshot full jest DUZY (setki GB). Ten krok moze trwac dlugo.
- Pobieramy full + incremental z oficjalnego endpointu (api.mainnet-beta.solana.com).
0) Stop validator
sudo systemctl stop agave-validator
1) (Opcjonalnie, polecane) wyczysc stare dane ledger (zostaw genesis.*)
sudo -u solana -H bash -lc '
cd /var/lib/solana/ledger
rm -rf rocksdb snapshots accounts_index accounts_hash_cache admin.rpc ledger.lock
ls -la | head
'
2) Pobierz FULL + INCREMENTAL snapshot do ledger (jako user `solana`)
sudo -u solana -H bash -lc '
set -euo pipefail
cd /var/lib/solana/ledger
FULL_REL="$(curl -sI https://api.mainnet-beta.solana.com/snapshot.tar.bz2 | awk "/^location:/{print \\$2}" | tr -d "\\r")"
INC_REL="$(curl -sI https://api.mainnet-beta.solana.com/incremental-snapshot.tar.bz2 | awk "/^location:/{print \\$2}" | tr -d "\\r")"
echo "FULL_REL=$FULL_REL"
echo "INC_REL=$INC_REL"
FULL_URL="https://api.mainnet-beta.solana.com${FULL_REL}"
INC_URL="https://api.mainnet-beta.solana.com${INC_REL}"
FULL_FILE="$(basename "$FULL_REL")"
INC_FILE="$(basename "$INC_REL")"
echo "Downloading FULL: $FULL_FILE"
curl -fSL "$FULL_URL" -o "$FULL_FILE"
ls -lh "$FULL_FILE"
echo "Downloading INC: $INC_FILE"
curl -fSL "$INC_URL" -o "$INC_FILE"
ls -lh "$INC_FILE"
'
3) Start validator + logi
sudo systemctl start agave-validator
sudo journalctl -u agave-validator -n 80 --no-pager