Monad Mainnet 143 Height— Snapshot— connecting

Restore a node

For a Monad mainnet full node that is already installed and configured the official way. One command replaces its state with the latest snapshot and brings it back to the head. It runs the Monad Foundation's own scripts — only the download comes from this mirror.

Snapshot block
—
—
Download
—
aria2c, 8 connections
sha256
—
checked against the official file

Before you start

  • the monad package installed, keys, node.toml and /home/monad/.env in place — set up by the official guide ↗
  • /dev/triedb pointing at the TrieDB drive
  • root, and ~100 GB free in /home/monad/monad-bft for the download and its unpacked copy

A restore erases the node's TrieDB and ledger. That is what a snapshot restore is. It never touches your keys.

One command

First, if you like, only check the download — the node is not touched:

curl -fsSL https://labs.monad.exploreme.pro/install.sh | sudo bash -s -- --check

Then restore:

curl -fsSL https://labs.monad.exploreme.pro/install.sh | sudo bash -s -- --yes

read the script ↗ — 130 lines, most of them messages.

What happens

  1. Manifest. Reads /manifests/mainnet/latest.json: which official snapshot, its block, size and sha256.
  2. Stop and reset. Stops monad-bft, monad-execution, monad-rpc and runs the package's /opt/monad/scripts/reset-workspace.sh.
  3. Official restore, our download. Fetches restore-from-snapshot.sh from bucket.monadinfra.com, prints its sha256 and changes exactly one line — HOST — to this mirror. If that line is not where the script expects it, it stops rather than patch blindly. The official script then downloads, runs sha256sum -c on the official checksum, picks the TrieDB mode for MIP-8 and imports with monad-cli --load-binary-snapshot.
  4. Forkpoint. Runs the official download-forkpoint.sh, retrying for a couple of minutes — Monad publishes one a minute.
  5. Start. Starts the services and prints the node's height against rpc.monad.xyz until it is within ten blocks of the head.

If something goes wrong

Everything after step 2 is the official procedure, so the official troubleshooting applies. The services' logs: journalctl -u monad-bft -u monad-execution -n 100. To restore straight from the Monad Foundation instead of this mirror, run the unmodified restore-from-snapshot.sh — the files are identical, byte for byte.