[{"data":1,"prerenderedAt":2322},["Reactive",2],{"navigation":3,"/networks/monad/snapshots":87,"/networks/monad/snapshots-surround":2317},[4,11],{"title":5,"_path":6,"children":7},"Learning Center","/general",[8],{"title":9,"_path":10},"Install & Use Docker","/general/docker",{"title":12,"_path":13,"children":14},"Networks","/networks",[15,17,41,68,78],{"title":16,"_path":13},"Introduction",{"title":18,"_path":19,"children":20},"Namada","/networks/namada",[21,22,25,28],{"title":16,"_path":19},{"title":23,"_path":24},"Services","/networks/namada/services",{"title":26,"_path":27},"Snapshots","/networks/namada/snapshots",{"title":29,"_path":30,"children":31},"Namada Node Guide","/networks/namada/nodes-guide",[32,35,38],{"title":33,"_path":34},"Getting Started","/networks/namada/nodes-guide/getting-started",{"title":36,"_path":37},"Fullnode & Validator","/networks/namada/nodes-guide/node",{"title":39,"_path":40},"Monitoring","/networks/namada/nodes-guide/monitoring",{"title":42,"_path":43,"children":44},"0G - Zero Gravity","/networks/zero-gravity",[45,46,48],{"title":16,"_path":43},{"title":23,"_path":47},"/networks/zero-gravity/services",{"title":49,"_path":50,"children":51},"0G Nodes Guide","/networks/zero-gravity/nodes-guide",[52,54,56,59,62,65],{"title":33,"_path":53},"/networks/zero-gravity/nodes-guide/getting-started",{"title":36,"_path":55},"/networks/zero-gravity/nodes-guide/node",{"title":57,"_path":58},"Storage Node - ZeroGravity","/networks/zero-gravity/nodes-guide/storage",{"title":60,"_path":61},"KV Node - ZeroGravity","/networks/zero-gravity/nodes-guide/kv",{"title":63,"_path":64},"DA Client - ZeroGravity","/networks/zero-gravity/nodes-guide/da-client",{"title":66,"_path":67},"DA Node - ZeroGravity","/networks/zero-gravity/nodes-guide/da-node",{"title":69,"_path":70,"children":71},"Initia","/networks/initia",[72,73,75],{"title":16,"_path":70},{"title":23,"_path":74},"/networks/initia/services",{"title":76,"_path":77},"Node Guide","/networks/initia/guide",{"title":79,"_path":80,"children":81},"Monad","/networks/monad",[82,83,85],{"title":16,"_path":80},{"title":26,"_path":84},"/networks/monad/snapshots",{"title":39,"_path":86},"/networks/monad/monitoring",{"_path":84,"_dir":88,"_draft":89,"_partial":89,"_locale":90,"title":26,"description":91,"body":92,"_type":2312,"_id":2313,"_source":2314,"_file":2315,"_extension":2316},"monad",false,"","Snapshots provided by EmberStake for Monad",{"type":93,"children":94,"toc":2300},"root",[95,104,121,135,171,177,221,260,288,295,545,550,556,618,623,629,642,717,742,748,777,967,973,1056,1134,1155,1159,1165,1170,2207,2228,2274,2280,2294],{"type":96,"tag":97,"props":98,"children":100},"element","h2",{"id":99},"monad-node-snapshots",[101],{"type":102,"value":103},"text","Monad Node Snapshots",{"type":96,"tag":105,"props":106,"children":107},"p",{},[108,110,119],{"type":102,"value":109},"We snapshot our Monad nodes three times a day and keep the last 9, so you can always pick one\nfrom roughly the past three days. All snapshots are uploaded to\n",{"type":96,"tag":111,"props":112,"children":116},"a",{"href":113,"rel":114},"https://hetzner.cloud/?ref=aYjzvaVIKkSB",[115],"nofollow",[117],{"type":102,"value":118},"Hetzner",{"type":102,"value":120}," Object Storage.",{"type":96,"tag":105,"props":122,"children":123},{},[124,126,133],{"type":102,"value":125},"Snapshots are taken with ",{"type":96,"tag":127,"props":128,"children":130},"code",{"className":129},[],[131],{"type":102,"value":132},"monad-cli --dump-binary-snapshot",{"type":102,"value":134}," against a finalized block, without\nstopping the node, so they are a consistent point-in-time export of TrieDB rather than a copy of\na data directory.",{"type":96,"tag":136,"props":137,"children":138},"tabs",{},[139,157],{"type":96,"tag":140,"props":141,"children":144},"div",{"icon":142,"label":143},"i-heroicons-shield-exclamation","Mainnet",[145,150],{"type":96,"tag":105,"props":146,"children":147},{},[148],{"type":102,"value":149},"Node snapshots for Monad Mainnet",{"type":96,"tag":151,"props":152,"children":156},"snapshot-links",{"fields":153,"manifest":154,"sortBy":155},"name,size,block_height,pruning,snapshot_date,sha256,link","https://hel1.your-objectstorage.com/ember-public/_monad-mainnet-metadata.json","block_height",[],{"type":96,"tag":140,"props":158,"children":161},{"icon":159,"label":160},"i-simple-icons-fireship","Testnet",[162,167],{"type":96,"tag":105,"props":163,"children":164},{},[165],{"type":102,"value":166},"Node snapshots for Monad Testnet",{"type":96,"tag":151,"props":168,"children":170},{"fields":153,"manifest":169,"sortBy":155},"https://hel1.your-objectstorage.com/ember-public/_monad-testnet-metadata.json",[],{"type":96,"tag":97,"props":172,"children":174},{"id":173},"restoring",[175],{"type":102,"value":176},"Restoring",{"type":96,"tag":105,"props":178,"children":179},{},[180,182,188,190,196,198,204,206,212,214,219],{"type":102,"value":181},"Monad keeps execution state in ",{"type":96,"tag":183,"props":184,"children":185},"strong",{},[186],{"type":102,"value":187},"TrieDB, on a raw block device",{"type":102,"value":189}," with no filesystem — there is\nno data directory to swap out. Under ",{"type":96,"tag":127,"props":191,"children":193},{"className":192},[],[194],{"type":102,"value":195},"snapshots/monad/",{"type":102,"value":197},", our bucket mirrors Monad's\nofficial snapshot layout, with separate ",{"type":96,"tag":127,"props":199,"children":201},{"className":200},[],[202],{"type":102,"value":203},"mainnet/",{"type":102,"value":205}," and ",{"type":96,"tag":127,"props":207,"children":209},{"className":208},[],[210],{"type":102,"value":211},"testnet/",{"type":102,"value":213}," folders. The\n",{"type":96,"tag":183,"props":215,"children":216},{},[217],{"type":102,"value":218},"official restore script works against ours",{"type":102,"value":220}," with its snapshot base URL substituted.",{"type":96,"tag":222,"props":223,"children":226},"callout",{"icon":224,"color":225},"i-heroicons-exclamation-triangle","red",[227],{"type":96,"tag":105,"props":228,"children":229},{},[230,235,237,243,245,251,252,258],{"type":96,"tag":183,"props":231,"children":232},{},[233],{"type":102,"value":234},"Back up your validator identity before you start.",{"type":102,"value":236}," ",{"type":96,"tag":127,"props":238,"children":240},{"className":239},[],[241],{"type":102,"value":242},"id-secp",{"type":102,"value":244},", ",{"type":96,"tag":127,"props":246,"children":248},{"className":247},[],[249],{"type":102,"value":250},"id-bls",{"type":102,"value":205},{"type":96,"tag":127,"props":253,"children":255},{"className":254},[],[256],{"type":102,"value":257},".env",{"type":102,"value":259}," cannot be\nregenerated — losing them loses the validator. Never run two nodes with the same identity at\nthe same time.",{"type":96,"tag":105,"props":261,"children":262},{},[263,265,270,272,278,280,286],{"type":102,"value":264},"Run everything as ",{"type":96,"tag":127,"props":266,"children":268},{"className":267},[],[269],{"type":102,"value":93},{"type":102,"value":271},". Replace ",{"type":96,"tag":127,"props":273,"children":275},{"className":274},[],[276],{"type":102,"value":277},"mainnet",{"type":102,"value":279}," with ",{"type":96,"tag":127,"props":281,"children":283},{"className":282},[],[284],{"type":102,"value":285},"testnet",{"type":102,"value":287}," throughout for testnet.",{"type":96,"tag":289,"props":290,"children":292},"h3",{"id":291},"_1-stop-the-node-and-back-up-identity",[293],{"type":102,"value":294},"1. Stop the node and back up identity",{"type":96,"tag":296,"props":297,"children":301},"pre",{"className":298,"code":299,"language":300,"meta":90,"style":90},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","systemctl stop monad-bft monad-execution monad-rpc\n\nmkdir -p /root/monad-backup\ncp -a /home/monad/.env                       /root/monad-backup/ 2>/dev/null || true\ncp -a /home/monad/monad-bft/config/node.toml /root/monad-backup/ 2>/dev/null || true\ncp -a /home/monad/monad-bft/config/id-secp   /root/monad-backup/ 2>/dev/null || true\ncp -a /home/monad/monad-bft/config/id-bls    /root/monad-backup/ 2>/dev/null || true\nls -l /root/monad-backup\n","bash",[302],{"type":96,"tag":127,"props":303,"children":304},{"__ignoreMap":90},[305,338,348,367,413,451,489,527],{"type":96,"tag":306,"props":307,"children":310},"span",{"class":308,"line":309},"line",1,[311,317,323,328,333],{"type":96,"tag":306,"props":312,"children":314},{"style":313},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[315],{"type":102,"value":316},"systemctl",{"type":96,"tag":306,"props":318,"children":320},{"style":319},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[321],{"type":102,"value":322}," stop",{"type":96,"tag":306,"props":324,"children":325},{"style":319},[326],{"type":102,"value":327}," monad-bft",{"type":96,"tag":306,"props":329,"children":330},{"style":319},[331],{"type":102,"value":332}," monad-execution",{"type":96,"tag":306,"props":334,"children":335},{"style":319},[336],{"type":102,"value":337}," monad-rpc\n",{"type":96,"tag":306,"props":339,"children":341},{"class":308,"line":340},2,[342],{"type":96,"tag":306,"props":343,"children":345},{"emptyLinePlaceholder":344},true,[346],{"type":102,"value":347},"\n",{"type":96,"tag":306,"props":349,"children":351},{"class":308,"line":350},3,[352,357,362],{"type":96,"tag":306,"props":353,"children":354},{"style":313},[355],{"type":102,"value":356},"mkdir",{"type":96,"tag":306,"props":358,"children":359},{"style":319},[360],{"type":102,"value":361}," -p",{"type":96,"tag":306,"props":363,"children":364},{"style":319},[365],{"type":102,"value":366}," /root/monad-backup\n",{"type":96,"tag":306,"props":368,"children":370},{"class":308,"line":369},4,[371,376,381,386,391,397,402,407],{"type":96,"tag":306,"props":372,"children":373},{"style":313},[374],{"type":102,"value":375},"cp",{"type":96,"tag":306,"props":377,"children":378},{"style":319},[379],{"type":102,"value":380}," -a",{"type":96,"tag":306,"props":382,"children":383},{"style":319},[384],{"type":102,"value":385}," /home/monad/.env",{"type":96,"tag":306,"props":387,"children":388},{"style":319},[389],{"type":102,"value":390},"                       /root/monad-backup/",{"type":96,"tag":306,"props":392,"children":394},{"style":393},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[395],{"type":102,"value":396}," 2>",{"type":96,"tag":306,"props":398,"children":399},{"style":319},[400],{"type":102,"value":401},"/dev/null",{"type":96,"tag":306,"props":403,"children":404},{"style":393},[405],{"type":102,"value":406}," ||",{"type":96,"tag":306,"props":408,"children":410},{"style":409},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[411],{"type":102,"value":412}," true\n",{"type":96,"tag":306,"props":414,"children":416},{"class":308,"line":415},5,[417,421,425,430,435,439,443,447],{"type":96,"tag":306,"props":418,"children":419},{"style":313},[420],{"type":102,"value":375},{"type":96,"tag":306,"props":422,"children":423},{"style":319},[424],{"type":102,"value":380},{"type":96,"tag":306,"props":426,"children":427},{"style":319},[428],{"type":102,"value":429}," /home/monad/monad-bft/config/node.toml",{"type":96,"tag":306,"props":431,"children":432},{"style":319},[433],{"type":102,"value":434}," /root/monad-backup/",{"type":96,"tag":306,"props":436,"children":437},{"style":393},[438],{"type":102,"value":396},{"type":96,"tag":306,"props":440,"children":441},{"style":319},[442],{"type":102,"value":401},{"type":96,"tag":306,"props":444,"children":445},{"style":393},[446],{"type":102,"value":406},{"type":96,"tag":306,"props":448,"children":449},{"style":409},[450],{"type":102,"value":412},{"type":96,"tag":306,"props":452,"children":454},{"class":308,"line":453},6,[455,459,463,468,473,477,481,485],{"type":96,"tag":306,"props":456,"children":457},{"style":313},[458],{"type":102,"value":375},{"type":96,"tag":306,"props":460,"children":461},{"style":319},[462],{"type":102,"value":380},{"type":96,"tag":306,"props":464,"children":465},{"style":319},[466],{"type":102,"value":467}," /home/monad/monad-bft/config/id-secp",{"type":96,"tag":306,"props":469,"children":470},{"style":319},[471],{"type":102,"value":472},"   /root/monad-backup/",{"type":96,"tag":306,"props":474,"children":475},{"style":393},[476],{"type":102,"value":396},{"type":96,"tag":306,"props":478,"children":479},{"style":319},[480],{"type":102,"value":401},{"type":96,"tag":306,"props":482,"children":483},{"style":393},[484],{"type":102,"value":406},{"type":96,"tag":306,"props":486,"children":487},{"style":409},[488],{"type":102,"value":412},{"type":96,"tag":306,"props":490,"children":492},{"class":308,"line":491},7,[493,497,501,506,511,515,519,523],{"type":96,"tag":306,"props":494,"children":495},{"style":313},[496],{"type":102,"value":375},{"type":96,"tag":306,"props":498,"children":499},{"style":319},[500],{"type":102,"value":380},{"type":96,"tag":306,"props":502,"children":503},{"style":319},[504],{"type":102,"value":505}," /home/monad/monad-bft/config/id-bls",{"type":96,"tag":306,"props":507,"children":508},{"style":319},[509],{"type":102,"value":510},"    /root/monad-backup/",{"type":96,"tag":306,"props":512,"children":513},{"style":393},[514],{"type":102,"value":396},{"type":96,"tag":306,"props":516,"children":517},{"style":319},[518],{"type":102,"value":401},{"type":96,"tag":306,"props":520,"children":521},{"style":393},[522],{"type":102,"value":406},{"type":96,"tag":306,"props":524,"children":525},{"style":409},[526],{"type":102,"value":412},{"type":96,"tag":306,"props":528,"children":530},{"class":308,"line":529},8,[531,536,541],{"type":96,"tag":306,"props":532,"children":533},{"style":313},[534],{"type":102,"value":535},"ls",{"type":96,"tag":306,"props":537,"children":538},{"style":319},[539],{"type":102,"value":540}," -l",{"type":96,"tag":306,"props":542,"children":543},{"style":319},[544],{"type":102,"value":366},{"type":96,"tag":105,"props":546,"children":547},{},[548],{"type":102,"value":549},"Confirm the files are there before continuing.",{"type":96,"tag":289,"props":551,"children":553},{"id":552},"_2-reset-the-workspace",[554],{"type":102,"value":555},"2. Reset the workspace",{"type":96,"tag":296,"props":557,"children":559},{"className":298,"code":558,"language":300,"meta":90,"style":90},"apt update && apt install -y aria2 jq\nbash /opt/monad/scripts/reset-workspace.sh\n",[560],{"type":96,"tag":127,"props":561,"children":562},{"__ignoreMap":90},[563,606],{"type":96,"tag":306,"props":564,"children":565},{"class":308,"line":309},[566,571,576,581,586,591,596,601],{"type":96,"tag":306,"props":567,"children":568},{"style":313},[569],{"type":102,"value":570},"apt",{"type":96,"tag":306,"props":572,"children":573},{"style":319},[574],{"type":102,"value":575}," update",{"type":96,"tag":306,"props":577,"children":578},{"style":393},[579],{"type":102,"value":580}," &&",{"type":96,"tag":306,"props":582,"children":583},{"style":313},[584],{"type":102,"value":585}," apt",{"type":96,"tag":306,"props":587,"children":588},{"style":319},[589],{"type":102,"value":590}," install",{"type":96,"tag":306,"props":592,"children":593},{"style":319},[594],{"type":102,"value":595}," -y",{"type":96,"tag":306,"props":597,"children":598},{"style":319},[599],{"type":102,"value":600}," aria2",{"type":96,"tag":306,"props":602,"children":603},{"style":319},[604],{"type":102,"value":605}," jq\n",{"type":96,"tag":306,"props":607,"children":608},{"class":308,"line":340},[609,613],{"type":96,"tag":306,"props":610,"children":611},{"style":313},[612],{"type":102,"value":300},{"type":96,"tag":306,"props":614,"children":615},{"style":319},[616],{"type":102,"value":617}," /opt/monad/scripts/reset-workspace.sh\n",{"type":96,"tag":105,"props":619,"children":620},{},[621],{"type":102,"value":622},"This wipes local state. It is the point of no return.",{"type":96,"tag":289,"props":624,"children":626},{"id":625},"_3-restore-from-our-bucket",[627],{"type":102,"value":628},"3. Restore from our bucket",{"type":96,"tag":105,"props":630,"children":631},{},[632,634,640],{"type":102,"value":633},"This is Monad's own ",{"type":96,"tag":127,"props":635,"children":637},{"className":636},[],[638],{"type":102,"value":639},"restore-from-snapshot.sh",{"type":102,"value":641},", with the snapshot base URL pointed at us. It\nre-creates TrieDB in the correct MIP-8 mode, downloads the newest snapshot, verifies its\nchecksum, imports it, and handles the secondary timeline when required.",{"type":96,"tag":296,"props":643,"children":645},{"className":298,"code":644,"language":300,"meta":90,"style":90},"curl -fsSL https://bucket.monadinfra.com/scripts/mainnet/restore-from-snapshot.sh \\\n  | sed 's|https://bucket.monadinfra.com/snapshots|https://hel1.your-objectstorage.com/ember-public/snapshots/monad|' \\\n  | bash\n",[646],{"type":96,"tag":127,"props":647,"children":648},{"__ignoreMap":90},[649,673,705],{"type":96,"tag":306,"props":650,"children":651},{"class":308,"line":309},[652,657,662,667],{"type":96,"tag":306,"props":653,"children":654},{"style":313},[655],{"type":102,"value":656},"curl",{"type":96,"tag":306,"props":658,"children":659},{"style":319},[660],{"type":102,"value":661}," -fsSL",{"type":96,"tag":306,"props":663,"children":664},{"style":319},[665],{"type":102,"value":666}," https://bucket.monadinfra.com/scripts/mainnet/restore-from-snapshot.sh",{"type":96,"tag":306,"props":668,"children":670},{"style":669},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[671],{"type":102,"value":672}," \\\n",{"type":96,"tag":306,"props":674,"children":675},{"class":308,"line":340},[676,681,686,691,696,701],{"type":96,"tag":306,"props":677,"children":678},{"style":393},[679],{"type":102,"value":680},"  |",{"type":96,"tag":306,"props":682,"children":683},{"style":313},[684],{"type":102,"value":685}," sed",{"type":96,"tag":306,"props":687,"children":688},{"style":393},[689],{"type":102,"value":690}," '",{"type":96,"tag":306,"props":692,"children":693},{"style":319},[694],{"type":102,"value":695},"s|https://bucket.monadinfra.com/snapshots|https://hel1.your-objectstorage.com/ember-public/snapshots/monad|",{"type":96,"tag":306,"props":697,"children":698},{"style":393},[699],{"type":102,"value":700},"'",{"type":96,"tag":306,"props":702,"children":703},{"style":669},[704],{"type":102,"value":672},{"type":96,"tag":306,"props":706,"children":707},{"class":308,"line":350},[708,712],{"type":96,"tag":306,"props":709,"children":710},{"style":393},[711],{"type":102,"value":680},{"type":96,"tag":306,"props":713,"children":714},{"style":313},[715],{"type":102,"value":716}," bash\n",{"type":96,"tag":222,"props":718,"children":720},{"icon":719},"i-heroicons-information-circle",[721],{"type":96,"tag":105,"props":722,"children":723},{},[724,726,732,734,740],{"type":102,"value":725},"Because the script is fetched fresh each time, you always get Monad's current logic — only the\ndownload base URL changes. Drop the ",{"type":96,"tag":127,"props":727,"children":729},{"className":728},[],[730],{"type":102,"value":731},"| bash",{"type":102,"value":733}," to read what will run first. To restore from Monad's\nown bucket instead, run it without the ",{"type":96,"tag":127,"props":735,"children":737},{"className":736},[],[738],{"type":102,"value":739},"sed",{"type":102,"value":741},".",{"type":96,"tag":289,"props":743,"children":745},{"id":744},"_4-refresh-forkpoint-and-validator-set",[746],{"type":102,"value":747},"4. Refresh forkpoint and validator set",{"type":96,"tag":105,"props":749,"children":750},{},[751,753,759,761,767,769,775],{"type":102,"value":752},"On ",{"type":96,"tag":127,"props":754,"children":756},{"className":755},[],[757],{"type":102,"value":758},"monad-bft",{"type":102,"value":760}," v0.12.1+ this is optional if you have ",{"type":96,"tag":127,"props":762,"children":764},{"className":763},[],[765],{"type":102,"value":766},"REMOTE_FORKPOINT_URL",{"type":102,"value":768}," /\n",{"type":96,"tag":127,"props":770,"children":772},{"className":771},[],[773],{"type":102,"value":774},"REMOTE_VALIDATORS_URL",{"type":102,"value":776}," configured — the node fetches both on start. Otherwise it is required,\nor the node will not rejoin correctly.",{"type":96,"tag":296,"props":778,"children":780},{"className":298,"code":779,"language":300,"meta":90,"style":90},"unset REMOTE_VALIDATORS_URL REMOTE_FORKPOINT_URL\nMF_BUCKET=https://bucket.monadinfra.com\nVALIDATORS_FILE=/home/monad/monad-bft/config/validators/validators.toml\n\ncurl -fsSL \"$MF_BUCKET/scripts/mainnet/download-forkpoint.sh\" -o /tmp/download-forkpoint.sh\nbash /tmp/download-forkpoint.sh\ncurl -fsSL \"$MF_BUCKET/validators/mainnet/validators.toml\" -o \"$VALIDATORS_FILE\"\nchown monad:monad \"$VALIDATORS_FILE\"\n",[781],{"type":96,"tag":127,"props":782,"children":783},{"__ignoreMap":90},[784,802,820,837,844,885,896,942],{"type":96,"tag":306,"props":785,"children":786},{"class":308,"line":309},[787,792,797],{"type":96,"tag":306,"props":788,"children":789},{"style":409},[790],{"type":102,"value":791},"unset",{"type":96,"tag":306,"props":793,"children":794},{"style":319},[795],{"type":102,"value":796}," REMOTE_VALIDATORS_URL",{"type":96,"tag":306,"props":798,"children":799},{"style":319},[800],{"type":102,"value":801}," REMOTE_FORKPOINT_URL\n",{"type":96,"tag":306,"props":803,"children":804},{"class":308,"line":340},[805,810,815],{"type":96,"tag":306,"props":806,"children":807},{"style":669},[808],{"type":102,"value":809},"MF_BUCKET",{"type":96,"tag":306,"props":811,"children":812},{"style":393},[813],{"type":102,"value":814},"=",{"type":96,"tag":306,"props":816,"children":817},{"style":319},[818],{"type":102,"value":819},"https://bucket.monadinfra.com\n",{"type":96,"tag":306,"props":821,"children":822},{"class":308,"line":350},[823,828,832],{"type":96,"tag":306,"props":824,"children":825},{"style":669},[826],{"type":102,"value":827},"VALIDATORS_FILE",{"type":96,"tag":306,"props":829,"children":830},{"style":393},[831],{"type":102,"value":814},{"type":96,"tag":306,"props":833,"children":834},{"style":319},[835],{"type":102,"value":836},"/home/monad/monad-bft/config/validators/validators.toml\n",{"type":96,"tag":306,"props":838,"children":839},{"class":308,"line":369},[840],{"type":96,"tag":306,"props":841,"children":842},{"emptyLinePlaceholder":344},[843],{"type":102,"value":347},{"type":96,"tag":306,"props":845,"children":846},{"class":308,"line":415},[847,851,855,860,865,870,875,880],{"type":96,"tag":306,"props":848,"children":849},{"style":313},[850],{"type":102,"value":656},{"type":96,"tag":306,"props":852,"children":853},{"style":319},[854],{"type":102,"value":661},{"type":96,"tag":306,"props":856,"children":857},{"style":393},[858],{"type":102,"value":859}," \"",{"type":96,"tag":306,"props":861,"children":862},{"style":669},[863],{"type":102,"value":864},"$MF_BUCKET",{"type":96,"tag":306,"props":866,"children":867},{"style":319},[868],{"type":102,"value":869},"/scripts/mainnet/download-forkpoint.sh",{"type":96,"tag":306,"props":871,"children":872},{"style":393},[873],{"type":102,"value":874},"\"",{"type":96,"tag":306,"props":876,"children":877},{"style":319},[878],{"type":102,"value":879}," -o",{"type":96,"tag":306,"props":881,"children":882},{"style":319},[883],{"type":102,"value":884}," /tmp/download-forkpoint.sh\n",{"type":96,"tag":306,"props":886,"children":887},{"class":308,"line":453},[888,892],{"type":96,"tag":306,"props":889,"children":890},{"style":313},[891],{"type":102,"value":300},{"type":96,"tag":306,"props":893,"children":894},{"style":319},[895],{"type":102,"value":884},{"type":96,"tag":306,"props":897,"children":898},{"class":308,"line":491},[899,903,907,911,915,920,924,928,932,937],{"type":96,"tag":306,"props":900,"children":901},{"style":313},[902],{"type":102,"value":656},{"type":96,"tag":306,"props":904,"children":905},{"style":319},[906],{"type":102,"value":661},{"type":96,"tag":306,"props":908,"children":909},{"style":393},[910],{"type":102,"value":859},{"type":96,"tag":306,"props":912,"children":913},{"style":669},[914],{"type":102,"value":864},{"type":96,"tag":306,"props":916,"children":917},{"style":319},[918],{"type":102,"value":919},"/validators/mainnet/validators.toml",{"type":96,"tag":306,"props":921,"children":922},{"style":393},[923],{"type":102,"value":874},{"type":96,"tag":306,"props":925,"children":926},{"style":319},[927],{"type":102,"value":879},{"type":96,"tag":306,"props":929,"children":930},{"style":393},[931],{"type":102,"value":859},{"type":96,"tag":306,"props":933,"children":934},{"style":669},[935],{"type":102,"value":936},"$VALIDATORS_FILE",{"type":96,"tag":306,"props":938,"children":939},{"style":393},[940],{"type":102,"value":941},"\"\n",{"type":96,"tag":306,"props":943,"children":944},{"class":308,"line":529},[945,950,955,959,963],{"type":96,"tag":306,"props":946,"children":947},{"style":313},[948],{"type":102,"value":949},"chown",{"type":96,"tag":306,"props":951,"children":952},{"style":319},[953],{"type":102,"value":954}," monad:monad",{"type":96,"tag":306,"props":956,"children":957},{"style":393},[958],{"type":102,"value":859},{"type":96,"tag":306,"props":960,"children":961},{"style":669},[962],{"type":102,"value":936},{"type":96,"tag":306,"props":964,"children":965},{"style":393},[966],{"type":102,"value":941},{"type":96,"tag":289,"props":968,"children":970},{"id":969},"_5-start-and-verify",[971],{"type":102,"value":972},"5. Start and verify",{"type":96,"tag":296,"props":974,"children":976},{"className":298,"code":975,"language":300,"meta":90,"style":90},"chown -R monad:monad /home/monad/\nsystemctl start monad-bft monad-execution monad-rpc\njournalctl -u monad-bft -f -o cat\n",[977],{"type":96,"tag":127,"props":978,"children":979},{"__ignoreMap":90},[980,1001,1025],{"type":96,"tag":306,"props":981,"children":982},{"class":308,"line":309},[983,987,992,996],{"type":96,"tag":306,"props":984,"children":985},{"style":313},[986],{"type":102,"value":949},{"type":96,"tag":306,"props":988,"children":989},{"style":319},[990],{"type":102,"value":991}," -R",{"type":96,"tag":306,"props":993,"children":994},{"style":319},[995],{"type":102,"value":954},{"type":96,"tag":306,"props":997,"children":998},{"style":319},[999],{"type":102,"value":1000}," /home/monad/\n",{"type":96,"tag":306,"props":1002,"children":1003},{"class":308,"line":340},[1004,1008,1013,1017,1021],{"type":96,"tag":306,"props":1005,"children":1006},{"style":313},[1007],{"type":102,"value":316},{"type":96,"tag":306,"props":1009,"children":1010},{"style":319},[1011],{"type":102,"value":1012}," start",{"type":96,"tag":306,"props":1014,"children":1015},{"style":319},[1016],{"type":102,"value":327},{"type":96,"tag":306,"props":1018,"children":1019},{"style":319},[1020],{"type":102,"value":332},{"type":96,"tag":306,"props":1022,"children":1023},{"style":319},[1024],{"type":102,"value":337},{"type":96,"tag":306,"props":1026,"children":1027},{"class":308,"line":350},[1028,1033,1038,1042,1047,1051],{"type":96,"tag":306,"props":1029,"children":1030},{"style":313},[1031],{"type":102,"value":1032},"journalctl",{"type":96,"tag":306,"props":1034,"children":1035},{"style":319},[1036],{"type":102,"value":1037}," -u",{"type":96,"tag":306,"props":1039,"children":1040},{"style":319},[1041],{"type":102,"value":327},{"type":96,"tag":306,"props":1043,"children":1044},{"style":319},[1045],{"type":102,"value":1046}," -f",{"type":96,"tag":306,"props":1048,"children":1049},{"style":319},[1050],{"type":102,"value":879},{"type":96,"tag":306,"props":1052,"children":1053},{"style":319},[1054],{"type":102,"value":1055}," cat\n",{"type":96,"tag":296,"props":1057,"children":1059},{"className":298,"code":1058,"language":300,"meta":90,"style":90},"curl -s http://localhost:8080/ -X POST -H \"Content-Type: application/json\" \\\n  --data '{\"jsonrpc\":\"2.0\",\"method\":\"eth_chainId\",\"params\":[],\"id\":1}'\n",[1060],{"type":96,"tag":127,"props":1061,"children":1062},{"__ignoreMap":90},[1063,1112],{"type":96,"tag":306,"props":1064,"children":1065},{"class":308,"line":309},[1066,1070,1075,1080,1085,1090,1095,1099,1104,1108],{"type":96,"tag":306,"props":1067,"children":1068},{"style":313},[1069],{"type":102,"value":656},{"type":96,"tag":306,"props":1071,"children":1072},{"style":319},[1073],{"type":102,"value":1074}," -s",{"type":96,"tag":306,"props":1076,"children":1077},{"style":319},[1078],{"type":102,"value":1079}," http://localhost:8080/",{"type":96,"tag":306,"props":1081,"children":1082},{"style":319},[1083],{"type":102,"value":1084}," -X",{"type":96,"tag":306,"props":1086,"children":1087},{"style":319},[1088],{"type":102,"value":1089}," POST",{"type":96,"tag":306,"props":1091,"children":1092},{"style":319},[1093],{"type":102,"value":1094}," -H",{"type":96,"tag":306,"props":1096,"children":1097},{"style":393},[1098],{"type":102,"value":859},{"type":96,"tag":306,"props":1100,"children":1101},{"style":319},[1102],{"type":102,"value":1103},"Content-Type: application/json",{"type":96,"tag":306,"props":1105,"children":1106},{"style":393},[1107],{"type":102,"value":874},{"type":96,"tag":306,"props":1109,"children":1110},{"style":669},[1111],{"type":102,"value":672},{"type":96,"tag":306,"props":1113,"children":1114},{"class":308,"line":340},[1115,1120,1124,1129],{"type":96,"tag":306,"props":1116,"children":1117},{"style":319},[1118],{"type":102,"value":1119},"  --data",{"type":96,"tag":306,"props":1121,"children":1122},{"style":393},[1123],{"type":102,"value":690},{"type":96,"tag":306,"props":1125,"children":1126},{"style":319},[1127],{"type":102,"value":1128},"{\"jsonrpc\":\"2.0\",\"method\":\"eth_chainId\",\"params\":[],\"id\":1}",{"type":96,"tag":306,"props":1130,"children":1131},{"style":393},[1132],{"type":102,"value":1133},"'\n",{"type":96,"tag":105,"props":1135,"children":1136},{},[1137,1139,1145,1147,1153],{"type":102,"value":1138},"Expect ",{"type":96,"tag":127,"props":1140,"children":1142},{"className":1141},[],[1143],{"type":102,"value":1144},"\"result\":\"0x8f\"",{"type":102,"value":1146}," on mainnet (143) or ",{"type":96,"tag":127,"props":1148,"children":1150},{"className":1149},[],[1151],{"type":102,"value":1152},"\"result\":\"0x279f\"",{"type":102,"value":1154}," on testnet (10143).",{"type":96,"tag":1156,"props":1157,"children":1158},"hr",{},[],{"type":96,"tag":289,"props":1160,"children":1162},{"id":1161},"restoring-a-specific-snapshot",[1163],{"type":102,"value":1164},"Restoring a specific snapshot",{"type":96,"tag":105,"props":1166,"children":1167},{},[1168],{"type":102,"value":1169},"The script above always takes the newest snapshot, which is what you normally want. To use an\nolder one from the table, do steps 1 and 2 as above, then substitute step 3:",{"type":96,"tag":296,"props":1171,"children":1173},{"className":298,"code":1172,"language":300,"meta":90,"style":90},"SNAPSHOT=\u003Clink-from-the-table>\nBLOCK=\u003Cblock-height-from-the-table>\nSHA=\u003Csha256-from-the-table>\nNETWORK=mainnet\n\nDEST=/home/monad/monad-bft/snapshots\nmkdir -p \"$DEST\" && cd \"$DEST\"\ndf -BG \"$DEST\"        # want ~100GB free\n\n# TrieDB layout depends on whether the MIP-8 hardfork has activated for this network.\nMIP8=$(curl -fsSL https://docs.monad.xyz/networks.json \\\n  | jq -r --arg n \"$NETWORK\" '.[$n].mip8.hardfork_timestamp // empty')\nif [ -n \"$MIP8\" ] && [ \"$(date +%s)\" -ge \"$MIP8\" ]; then MODE=page; else MODE=pre; fi\n\n/usr/local/bin/monad-mpt --storage /dev/triedb --truncate --yes\nif [ \"$MODE\" = page ]; then\n  /usr/local/bin/monad-mpt --storage /dev/triedb --create-empty --yes --state-machine monad\n  SECONDARY=no\nelse\n  /usr/local/bin/monad-mpt --storage /dev/triedb --create\n  /usr/local/bin/monad-mpt --storage /dev/triedb --activate-secondary --state-machine monad \\\n    && SECONDARY=yes || SECONDARY=no\nfi\n\naria2c -x 8 -s 8 --continue=true \"$SNAPSHOT\"\nFILE=$(basename \"$SNAPSHOT\")\necho \"$SHA  $FILE\" | sha256sum -c -      # must print OK\n\ntar -I zstd -xf \"$FILE\" -C \"$DEST\"\n/usr/local/bin/monad-cli --db /dev/triedb --version \"$BLOCK\" --load-binary-snapshot \"$DEST\"\n[ \"$SECONDARY\" = yes ] && /usr/local/bin/monad-cli --db /dev/triedb --version \"$BLOCK\" \\\n  --load-binary-snapshot \"$DEST\" --secondary\n",[1174],{"type":96,"tag":127,"props":1175,"children":1176},{"__ignoreMap":90},[1177,1200,1221,1242,1259,1266,1283,1328,1359,1367,1376,1407,1466,1604,1612,1641,1686,1723,1741,1750,1771,1805,1844,1853,1861,1907,1941,1993,2001,2055,2108,2181],{"type":96,"tag":306,"props":1178,"children":1179},{"class":308,"line":309},[1180,1185,1190,1195],{"type":96,"tag":306,"props":1181,"children":1182},{"style":669},[1183],{"type":102,"value":1184},"SNAPSHOT",{"type":96,"tag":306,"props":1186,"children":1187},{"style":393},[1188],{"type":102,"value":1189},"=\u003C",{"type":96,"tag":306,"props":1191,"children":1192},{"style":319},[1193],{"type":102,"value":1194},"link-from-the-table",{"type":96,"tag":306,"props":1196,"children":1197},{"style":393},[1198],{"type":102,"value":1199},">\n",{"type":96,"tag":306,"props":1201,"children":1202},{"class":308,"line":340},[1203,1208,1212,1217],{"type":96,"tag":306,"props":1204,"children":1205},{"style":669},[1206],{"type":102,"value":1207},"BLOCK",{"type":96,"tag":306,"props":1209,"children":1210},{"style":393},[1211],{"type":102,"value":1189},{"type":96,"tag":306,"props":1213,"children":1214},{"style":319},[1215],{"type":102,"value":1216},"block-height-from-the-table",{"type":96,"tag":306,"props":1218,"children":1219},{"style":393},[1220],{"type":102,"value":1199},{"type":96,"tag":306,"props":1222,"children":1223},{"class":308,"line":350},[1224,1229,1233,1238],{"type":96,"tag":306,"props":1225,"children":1226},{"style":669},[1227],{"type":102,"value":1228},"SHA",{"type":96,"tag":306,"props":1230,"children":1231},{"style":393},[1232],{"type":102,"value":1189},{"type":96,"tag":306,"props":1234,"children":1235},{"style":319},[1236],{"type":102,"value":1237},"sha256-from-the-table",{"type":96,"tag":306,"props":1239,"children":1240},{"style":393},[1241],{"type":102,"value":1199},{"type":96,"tag":306,"props":1243,"children":1244},{"class":308,"line":369},[1245,1250,1254],{"type":96,"tag":306,"props":1246,"children":1247},{"style":669},[1248],{"type":102,"value":1249},"NETWORK",{"type":96,"tag":306,"props":1251,"children":1252},{"style":393},[1253],{"type":102,"value":814},{"type":96,"tag":306,"props":1255,"children":1256},{"style":319},[1257],{"type":102,"value":1258},"mainnet\n",{"type":96,"tag":306,"props":1260,"children":1261},{"class":308,"line":415},[1262],{"type":96,"tag":306,"props":1263,"children":1264},{"emptyLinePlaceholder":344},[1265],{"type":102,"value":347},{"type":96,"tag":306,"props":1267,"children":1268},{"class":308,"line":453},[1269,1274,1278],{"type":96,"tag":306,"props":1270,"children":1271},{"style":669},[1272],{"type":102,"value":1273},"DEST",{"type":96,"tag":306,"props":1275,"children":1276},{"style":393},[1277],{"type":102,"value":814},{"type":96,"tag":306,"props":1279,"children":1280},{"style":319},[1281],{"type":102,"value":1282},"/home/monad/monad-bft/snapshots\n",{"type":96,"tag":306,"props":1284,"children":1285},{"class":308,"line":491},[1286,1290,1294,1298,1303,1307,1311,1316,1320,1324],{"type":96,"tag":306,"props":1287,"children":1288},{"style":313},[1289],{"type":102,"value":356},{"type":96,"tag":306,"props":1291,"children":1292},{"style":319},[1293],{"type":102,"value":361},{"type":96,"tag":306,"props":1295,"children":1296},{"style":393},[1297],{"type":102,"value":859},{"type":96,"tag":306,"props":1299,"children":1300},{"style":669},[1301],{"type":102,"value":1302},"$DEST",{"type":96,"tag":306,"props":1304,"children":1305},{"style":393},[1306],{"type":102,"value":874},{"type":96,"tag":306,"props":1308,"children":1309},{"style":393},[1310],{"type":102,"value":580},{"type":96,"tag":306,"props":1312,"children":1313},{"style":409},[1314],{"type":102,"value":1315}," cd",{"type":96,"tag":306,"props":1317,"children":1318},{"style":393},[1319],{"type":102,"value":859},{"type":96,"tag":306,"props":1321,"children":1322},{"style":669},[1323],{"type":102,"value":1302},{"type":96,"tag":306,"props":1325,"children":1326},{"style":393},[1327],{"type":102,"value":941},{"type":96,"tag":306,"props":1329,"children":1330},{"class":308,"line":529},[1331,1336,1341,1345,1349,1353],{"type":96,"tag":306,"props":1332,"children":1333},{"style":313},[1334],{"type":102,"value":1335},"df",{"type":96,"tag":306,"props":1337,"children":1338},{"style":319},[1339],{"type":102,"value":1340}," -BG",{"type":96,"tag":306,"props":1342,"children":1343},{"style":393},[1344],{"type":102,"value":859},{"type":96,"tag":306,"props":1346,"children":1347},{"style":669},[1348],{"type":102,"value":1302},{"type":96,"tag":306,"props":1350,"children":1351},{"style":393},[1352],{"type":102,"value":874},{"type":96,"tag":306,"props":1354,"children":1356},{"style":1355},"--shiki-light:#90A4AE;--shiki-default:#546E7A;--shiki-dark:#676E95;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[1357],{"type":102,"value":1358},"        # want ~100GB free\n",{"type":96,"tag":306,"props":1360,"children":1362},{"class":308,"line":1361},9,[1363],{"type":96,"tag":306,"props":1364,"children":1365},{"emptyLinePlaceholder":344},[1366],{"type":102,"value":347},{"type":96,"tag":306,"props":1368,"children":1370},{"class":308,"line":1369},10,[1371],{"type":96,"tag":306,"props":1372,"children":1373},{"style":1355},[1374],{"type":102,"value":1375},"# TrieDB layout depends on whether the MIP-8 hardfork has activated for this network.\n",{"type":96,"tag":306,"props":1377,"children":1379},{"class":308,"line":1378},11,[1380,1385,1390,1394,1398,1403],{"type":96,"tag":306,"props":1381,"children":1382},{"style":669},[1383],{"type":102,"value":1384},"MIP8",{"type":96,"tag":306,"props":1386,"children":1387},{"style":393},[1388],{"type":102,"value":1389},"=$(",{"type":96,"tag":306,"props":1391,"children":1392},{"style":313},[1393],{"type":102,"value":656},{"type":96,"tag":306,"props":1395,"children":1396},{"style":319},[1397],{"type":102,"value":661},{"type":96,"tag":306,"props":1399,"children":1400},{"style":319},[1401],{"type":102,"value":1402}," https://docs.monad.xyz/networks.json",{"type":96,"tag":306,"props":1404,"children":1405},{"style":669},[1406],{"type":102,"value":672},{"type":96,"tag":306,"props":1408,"children":1410},{"class":308,"line":1409},12,[1411,1415,1420,1425,1430,1435,1439,1444,1448,1452,1457,1461],{"type":96,"tag":306,"props":1412,"children":1413},{"style":393},[1414],{"type":102,"value":680},{"type":96,"tag":306,"props":1416,"children":1417},{"style":313},[1418],{"type":102,"value":1419}," jq",{"type":96,"tag":306,"props":1421,"children":1422},{"style":319},[1423],{"type":102,"value":1424}," -r",{"type":96,"tag":306,"props":1426,"children":1427},{"style":319},[1428],{"type":102,"value":1429}," --arg",{"type":96,"tag":306,"props":1431,"children":1432},{"style":319},[1433],{"type":102,"value":1434}," n",{"type":96,"tag":306,"props":1436,"children":1437},{"style":393},[1438],{"type":102,"value":859},{"type":96,"tag":306,"props":1440,"children":1441},{"style":669},[1442],{"type":102,"value":1443},"$NETWORK",{"type":96,"tag":306,"props":1445,"children":1446},{"style":393},[1447],{"type":102,"value":874},{"type":96,"tag":306,"props":1449,"children":1450},{"style":393},[1451],{"type":102,"value":690},{"type":96,"tag":306,"props":1453,"children":1454},{"style":319},[1455],{"type":102,"value":1456},".[$n].mip8.hardfork_timestamp // empty",{"type":96,"tag":306,"props":1458,"children":1459},{"style":393},[1460],{"type":102,"value":700},{"type":96,"tag":306,"props":1462,"children":1463},{"style":393},[1464],{"type":102,"value":1465},")\n",{"type":96,"tag":306,"props":1467,"children":1469},{"class":308,"line":1468},13,[1470,1476,1481,1486,1490,1495,1499,1504,1508,1512,1517,1522,1527,1532,1537,1541,1545,1549,1554,1559,1564,1568,1573,1578,1583,1587,1591,1595,1599],{"type":96,"tag":306,"props":1471,"children":1473},{"style":1472},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF;--shiki-light-font-style:italic;--shiki-default-font-style:italic;--shiki-dark-font-style:italic",[1474],{"type":102,"value":1475},"if",{"type":96,"tag":306,"props":1477,"children":1478},{"style":393},[1479],{"type":102,"value":1480}," [",{"type":96,"tag":306,"props":1482,"children":1483},{"style":393},[1484],{"type":102,"value":1485}," -n",{"type":96,"tag":306,"props":1487,"children":1488},{"style":393},[1489],{"type":102,"value":859},{"type":96,"tag":306,"props":1491,"children":1492},{"style":669},[1493],{"type":102,"value":1494},"$MIP8",{"type":96,"tag":306,"props":1496,"children":1497},{"style":393},[1498],{"type":102,"value":874},{"type":96,"tag":306,"props":1500,"children":1501},{"style":393},[1502],{"type":102,"value":1503}," ]",{"type":96,"tag":306,"props":1505,"children":1506},{"style":393},[1507],{"type":102,"value":580},{"type":96,"tag":306,"props":1509,"children":1510},{"style":393},[1511],{"type":102,"value":1480},{"type":96,"tag":306,"props":1513,"children":1514},{"style":393},[1515],{"type":102,"value":1516}," \"$(",{"type":96,"tag":306,"props":1518,"children":1519},{"style":313},[1520],{"type":102,"value":1521},"date",{"type":96,"tag":306,"props":1523,"children":1524},{"style":319},[1525],{"type":102,"value":1526}," +%s",{"type":96,"tag":306,"props":1528,"children":1529},{"style":393},[1530],{"type":102,"value":1531},")\"",{"type":96,"tag":306,"props":1533,"children":1534},{"style":393},[1535],{"type":102,"value":1536}," -ge",{"type":96,"tag":306,"props":1538,"children":1539},{"style":393},[1540],{"type":102,"value":859},{"type":96,"tag":306,"props":1542,"children":1543},{"style":669},[1544],{"type":102,"value":1494},{"type":96,"tag":306,"props":1546,"children":1547},{"style":393},[1548],{"type":102,"value":874},{"type":96,"tag":306,"props":1550,"children":1551},{"style":393},[1552],{"type":102,"value":1553}," ];",{"type":96,"tag":306,"props":1555,"children":1556},{"style":1472},[1557],{"type":102,"value":1558}," then",{"type":96,"tag":306,"props":1560,"children":1561},{"style":669},[1562],{"type":102,"value":1563}," MODE",{"type":96,"tag":306,"props":1565,"children":1566},{"style":393},[1567],{"type":102,"value":814},{"type":96,"tag":306,"props":1569,"children":1570},{"style":319},[1571],{"type":102,"value":1572},"page",{"type":96,"tag":306,"props":1574,"children":1575},{"style":393},[1576],{"type":102,"value":1577},";",{"type":96,"tag":306,"props":1579,"children":1580},{"style":1472},[1581],{"type":102,"value":1582}," else",{"type":96,"tag":306,"props":1584,"children":1585},{"style":669},[1586],{"type":102,"value":1563},{"type":96,"tag":306,"props":1588,"children":1589},{"style":393},[1590],{"type":102,"value":814},{"type":96,"tag":306,"props":1592,"children":1593},{"style":319},[1594],{"type":102,"value":296},{"type":96,"tag":306,"props":1596,"children":1597},{"style":393},[1598],{"type":102,"value":1577},{"type":96,"tag":306,"props":1600,"children":1601},{"style":1472},[1602],{"type":102,"value":1603}," fi\n",{"type":96,"tag":306,"props":1605,"children":1607},{"class":308,"line":1606},14,[1608],{"type":96,"tag":306,"props":1609,"children":1610},{"emptyLinePlaceholder":344},[1611],{"type":102,"value":347},{"type":96,"tag":306,"props":1613,"children":1615},{"class":308,"line":1614},15,[1616,1621,1626,1631,1636],{"type":96,"tag":306,"props":1617,"children":1618},{"style":313},[1619],{"type":102,"value":1620},"/usr/local/bin/monad-mpt",{"type":96,"tag":306,"props":1622,"children":1623},{"style":319},[1624],{"type":102,"value":1625}," --storage",{"type":96,"tag":306,"props":1627,"children":1628},{"style":319},[1629],{"type":102,"value":1630}," /dev/triedb",{"type":96,"tag":306,"props":1632,"children":1633},{"style":319},[1634],{"type":102,"value":1635}," --truncate",{"type":96,"tag":306,"props":1637,"children":1638},{"style":319},[1639],{"type":102,"value":1640}," --yes\n",{"type":96,"tag":306,"props":1642,"children":1644},{"class":308,"line":1643},16,[1645,1649,1653,1657,1662,1666,1671,1676,1681],{"type":96,"tag":306,"props":1646,"children":1647},{"style":1472},[1648],{"type":102,"value":1475},{"type":96,"tag":306,"props":1650,"children":1651},{"style":393},[1652],{"type":102,"value":1480},{"type":96,"tag":306,"props":1654,"children":1655},{"style":393},[1656],{"type":102,"value":859},{"type":96,"tag":306,"props":1658,"children":1659},{"style":669},[1660],{"type":102,"value":1661},"$MODE",{"type":96,"tag":306,"props":1663,"children":1664},{"style":393},[1665],{"type":102,"value":874},{"type":96,"tag":306,"props":1667,"children":1668},{"style":393},[1669],{"type":102,"value":1670}," =",{"type":96,"tag":306,"props":1672,"children":1673},{"style":669},[1674],{"type":102,"value":1675}," page ",{"type":96,"tag":306,"props":1677,"children":1678},{"style":393},[1679],{"type":102,"value":1680},"];",{"type":96,"tag":306,"props":1682,"children":1683},{"style":1472},[1684],{"type":102,"value":1685}," then\n",{"type":96,"tag":306,"props":1687,"children":1689},{"class":308,"line":1688},17,[1690,1695,1699,1703,1708,1713,1718],{"type":96,"tag":306,"props":1691,"children":1692},{"style":313},[1693],{"type":102,"value":1694},"  /usr/local/bin/monad-mpt",{"type":96,"tag":306,"props":1696,"children":1697},{"style":319},[1698],{"type":102,"value":1625},{"type":96,"tag":306,"props":1700,"children":1701},{"style":319},[1702],{"type":102,"value":1630},{"type":96,"tag":306,"props":1704,"children":1705},{"style":319},[1706],{"type":102,"value":1707}," --create-empty",{"type":96,"tag":306,"props":1709,"children":1710},{"style":319},[1711],{"type":102,"value":1712}," --yes",{"type":96,"tag":306,"props":1714,"children":1715},{"style":319},[1716],{"type":102,"value":1717}," --state-machine",{"type":96,"tag":306,"props":1719,"children":1720},{"style":319},[1721],{"type":102,"value":1722}," monad\n",{"type":96,"tag":306,"props":1724,"children":1726},{"class":308,"line":1725},18,[1727,1732,1736],{"type":96,"tag":306,"props":1728,"children":1729},{"style":669},[1730],{"type":102,"value":1731},"  SECONDARY",{"type":96,"tag":306,"props":1733,"children":1734},{"style":393},[1735],{"type":102,"value":814},{"type":96,"tag":306,"props":1737,"children":1738},{"style":319},[1739],{"type":102,"value":1740},"no\n",{"type":96,"tag":306,"props":1742,"children":1744},{"class":308,"line":1743},19,[1745],{"type":96,"tag":306,"props":1746,"children":1747},{"style":1472},[1748],{"type":102,"value":1749},"else\n",{"type":96,"tag":306,"props":1751,"children":1753},{"class":308,"line":1752},20,[1754,1758,1762,1766],{"type":96,"tag":306,"props":1755,"children":1756},{"style":313},[1757],{"type":102,"value":1694},{"type":96,"tag":306,"props":1759,"children":1760},{"style":319},[1761],{"type":102,"value":1625},{"type":96,"tag":306,"props":1763,"children":1764},{"style":319},[1765],{"type":102,"value":1630},{"type":96,"tag":306,"props":1767,"children":1768},{"style":319},[1769],{"type":102,"value":1770}," --create\n",{"type":96,"tag":306,"props":1772,"children":1774},{"class":308,"line":1773},21,[1775,1779,1783,1787,1792,1796,1801],{"type":96,"tag":306,"props":1776,"children":1777},{"style":313},[1778],{"type":102,"value":1694},{"type":96,"tag":306,"props":1780,"children":1781},{"style":319},[1782],{"type":102,"value":1625},{"type":96,"tag":306,"props":1784,"children":1785},{"style":319},[1786],{"type":102,"value":1630},{"type":96,"tag":306,"props":1788,"children":1789},{"style":319},[1790],{"type":102,"value":1791}," --activate-secondary",{"type":96,"tag":306,"props":1793,"children":1794},{"style":319},[1795],{"type":102,"value":1717},{"type":96,"tag":306,"props":1797,"children":1798},{"style":319},[1799],{"type":102,"value":1800}," monad",{"type":96,"tag":306,"props":1802,"children":1803},{"style":669},[1804],{"type":102,"value":672},{"type":96,"tag":306,"props":1806,"children":1808},{"class":308,"line":1807},22,[1809,1814,1819,1823,1828,1832,1836,1840],{"type":96,"tag":306,"props":1810,"children":1811},{"style":393},[1812],{"type":102,"value":1813},"    &&",{"type":96,"tag":306,"props":1815,"children":1816},{"style":669},[1817],{"type":102,"value":1818}," SECONDARY",{"type":96,"tag":306,"props":1820,"children":1821},{"style":393},[1822],{"type":102,"value":814},{"type":96,"tag":306,"props":1824,"children":1825},{"style":319},[1826],{"type":102,"value":1827},"yes",{"type":96,"tag":306,"props":1829,"children":1830},{"style":393},[1831],{"type":102,"value":406},{"type":96,"tag":306,"props":1833,"children":1834},{"style":669},[1835],{"type":102,"value":1818},{"type":96,"tag":306,"props":1837,"children":1838},{"style":393},[1839],{"type":102,"value":814},{"type":96,"tag":306,"props":1841,"children":1842},{"style":319},[1843],{"type":102,"value":1740},{"type":96,"tag":306,"props":1845,"children":1847},{"class":308,"line":1846},23,[1848],{"type":96,"tag":306,"props":1849,"children":1850},{"style":1472},[1851],{"type":102,"value":1852},"fi\n",{"type":96,"tag":306,"props":1854,"children":1856},{"class":308,"line":1855},24,[1857],{"type":96,"tag":306,"props":1858,"children":1859},{"emptyLinePlaceholder":344},[1860],{"type":102,"value":347},{"type":96,"tag":306,"props":1862,"children":1864},{"class":308,"line":1863},25,[1865,1870,1875,1881,1885,1889,1894,1898,1903],{"type":96,"tag":306,"props":1866,"children":1867},{"style":313},[1868],{"type":102,"value":1869},"aria2c",{"type":96,"tag":306,"props":1871,"children":1872},{"style":319},[1873],{"type":102,"value":1874}," -x",{"type":96,"tag":306,"props":1876,"children":1878},{"style":1877},"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C",[1879],{"type":102,"value":1880}," 8",{"type":96,"tag":306,"props":1882,"children":1883},{"style":319},[1884],{"type":102,"value":1074},{"type":96,"tag":306,"props":1886,"children":1887},{"style":1877},[1888],{"type":102,"value":1880},{"type":96,"tag":306,"props":1890,"children":1891},{"style":319},[1892],{"type":102,"value":1893}," --continue=true",{"type":96,"tag":306,"props":1895,"children":1896},{"style":393},[1897],{"type":102,"value":859},{"type":96,"tag":306,"props":1899,"children":1900},{"style":669},[1901],{"type":102,"value":1902},"$SNAPSHOT",{"type":96,"tag":306,"props":1904,"children":1905},{"style":393},[1906],{"type":102,"value":941},{"type":96,"tag":306,"props":1908,"children":1910},{"class":308,"line":1909},26,[1911,1916,1920,1925,1929,1933,1937],{"type":96,"tag":306,"props":1912,"children":1913},{"style":669},[1914],{"type":102,"value":1915},"FILE",{"type":96,"tag":306,"props":1917,"children":1918},{"style":393},[1919],{"type":102,"value":1389},{"type":96,"tag":306,"props":1921,"children":1922},{"style":313},[1923],{"type":102,"value":1924},"basename",{"type":96,"tag":306,"props":1926,"children":1927},{"style":393},[1928],{"type":102,"value":859},{"type":96,"tag":306,"props":1930,"children":1931},{"style":669},[1932],{"type":102,"value":1902},{"type":96,"tag":306,"props":1934,"children":1935},{"style":393},[1936],{"type":102,"value":874},{"type":96,"tag":306,"props":1938,"children":1939},{"style":393},[1940],{"type":102,"value":1465},{"type":96,"tag":306,"props":1942,"children":1944},{"class":308,"line":1943},27,[1945,1950,1954,1959,1964,1968,1973,1978,1983,1988],{"type":96,"tag":306,"props":1946,"children":1947},{"style":409},[1948],{"type":102,"value":1949},"echo",{"type":96,"tag":306,"props":1951,"children":1952},{"style":393},[1953],{"type":102,"value":859},{"type":96,"tag":306,"props":1955,"children":1956},{"style":669},[1957],{"type":102,"value":1958},"$SHA",{"type":96,"tag":306,"props":1960,"children":1961},{"style":669},[1962],{"type":102,"value":1963},"  $FILE",{"type":96,"tag":306,"props":1965,"children":1966},{"style":393},[1967],{"type":102,"value":874},{"type":96,"tag":306,"props":1969,"children":1970},{"style":393},[1971],{"type":102,"value":1972}," |",{"type":96,"tag":306,"props":1974,"children":1975},{"style":313},[1976],{"type":102,"value":1977}," sha256sum",{"type":96,"tag":306,"props":1979,"children":1980},{"style":319},[1981],{"type":102,"value":1982}," -c",{"type":96,"tag":306,"props":1984,"children":1985},{"style":319},[1986],{"type":102,"value":1987}," -",{"type":96,"tag":306,"props":1989,"children":1990},{"style":1355},[1991],{"type":102,"value":1992},"      # must print OK\n",{"type":96,"tag":306,"props":1994,"children":1996},{"class":308,"line":1995},28,[1997],{"type":96,"tag":306,"props":1998,"children":1999},{"emptyLinePlaceholder":344},[2000],{"type":102,"value":347},{"type":96,"tag":306,"props":2002,"children":2004},{"class":308,"line":2003},29,[2005,2010,2015,2020,2025,2029,2034,2038,2043,2047,2051],{"type":96,"tag":306,"props":2006,"children":2007},{"style":313},[2008],{"type":102,"value":2009},"tar",{"type":96,"tag":306,"props":2011,"children":2012},{"style":319},[2013],{"type":102,"value":2014}," -I",{"type":96,"tag":306,"props":2016,"children":2017},{"style":319},[2018],{"type":102,"value":2019}," zstd",{"type":96,"tag":306,"props":2021,"children":2022},{"style":319},[2023],{"type":102,"value":2024}," -xf",{"type":96,"tag":306,"props":2026,"children":2027},{"style":393},[2028],{"type":102,"value":859},{"type":96,"tag":306,"props":2030,"children":2031},{"style":669},[2032],{"type":102,"value":2033},"$FILE",{"type":96,"tag":306,"props":2035,"children":2036},{"style":393},[2037],{"type":102,"value":874},{"type":96,"tag":306,"props":2039,"children":2040},{"style":319},[2041],{"type":102,"value":2042}," -C",{"type":96,"tag":306,"props":2044,"children":2045},{"style":393},[2046],{"type":102,"value":859},{"type":96,"tag":306,"props":2048,"children":2049},{"style":669},[2050],{"type":102,"value":1302},{"type":96,"tag":306,"props":2052,"children":2053},{"style":393},[2054],{"type":102,"value":941},{"type":96,"tag":306,"props":2056,"children":2058},{"class":308,"line":2057},30,[2059,2064,2069,2073,2078,2082,2087,2091,2096,2100,2104],{"type":96,"tag":306,"props":2060,"children":2061},{"style":313},[2062],{"type":102,"value":2063},"/usr/local/bin/monad-cli",{"type":96,"tag":306,"props":2065,"children":2066},{"style":319},[2067],{"type":102,"value":2068}," --db",{"type":96,"tag":306,"props":2070,"children":2071},{"style":319},[2072],{"type":102,"value":1630},{"type":96,"tag":306,"props":2074,"children":2075},{"style":319},[2076],{"type":102,"value":2077}," --version",{"type":96,"tag":306,"props":2079,"children":2080},{"style":393},[2081],{"type":102,"value":859},{"type":96,"tag":306,"props":2083,"children":2084},{"style":669},[2085],{"type":102,"value":2086},"$BLOCK",{"type":96,"tag":306,"props":2088,"children":2089},{"style":393},[2090],{"type":102,"value":874},{"type":96,"tag":306,"props":2092,"children":2093},{"style":319},[2094],{"type":102,"value":2095}," --load-binary-snapshot",{"type":96,"tag":306,"props":2097,"children":2098},{"style":393},[2099],{"type":102,"value":859},{"type":96,"tag":306,"props":2101,"children":2102},{"style":669},[2103],{"type":102,"value":1302},{"type":96,"tag":306,"props":2105,"children":2106},{"style":393},[2107],{"type":102,"value":941},{"type":96,"tag":306,"props":2109,"children":2111},{"class":308,"line":2110},31,[2112,2117,2121,2126,2130,2134,2139,2144,2148,2153,2157,2161,2165,2169,2173,2177],{"type":96,"tag":306,"props":2113,"children":2114},{"style":393},[2115],{"type":102,"value":2116},"[",{"type":96,"tag":306,"props":2118,"children":2119},{"style":393},[2120],{"type":102,"value":859},{"type":96,"tag":306,"props":2122,"children":2123},{"style":669},[2124],{"type":102,"value":2125},"$SECONDARY",{"type":96,"tag":306,"props":2127,"children":2128},{"style":393},[2129],{"type":102,"value":874},{"type":96,"tag":306,"props":2131,"children":2132},{"style":393},[2133],{"type":102,"value":1670},{"type":96,"tag":306,"props":2135,"children":2136},{"style":669},[2137],{"type":102,"value":2138}," yes ",{"type":96,"tag":306,"props":2140,"children":2141},{"style":393},[2142],{"type":102,"value":2143},"]",{"type":96,"tag":306,"props":2145,"children":2146},{"style":393},[2147],{"type":102,"value":580},{"type":96,"tag":306,"props":2149,"children":2150},{"style":313},[2151],{"type":102,"value":2152}," /usr/local/bin/monad-cli",{"type":96,"tag":306,"props":2154,"children":2155},{"style":319},[2156],{"type":102,"value":2068},{"type":96,"tag":306,"props":2158,"children":2159},{"style":319},[2160],{"type":102,"value":1630},{"type":96,"tag":306,"props":2162,"children":2163},{"style":319},[2164],{"type":102,"value":2077},{"type":96,"tag":306,"props":2166,"children":2167},{"style":393},[2168],{"type":102,"value":859},{"type":96,"tag":306,"props":2170,"children":2171},{"style":669},[2172],{"type":102,"value":2086},{"type":96,"tag":306,"props":2174,"children":2175},{"style":393},[2176],{"type":102,"value":874},{"type":96,"tag":306,"props":2178,"children":2179},{"style":669},[2180],{"type":102,"value":672},{"type":96,"tag":306,"props":2182,"children":2184},{"class":308,"line":2183},32,[2185,2190,2194,2198,2202],{"type":96,"tag":306,"props":2186,"children":2187},{"style":319},[2188],{"type":102,"value":2189},"  --load-binary-snapshot",{"type":96,"tag":306,"props":2191,"children":2192},{"style":393},[2193],{"type":102,"value":859},{"type":96,"tag":306,"props":2195,"children":2196},{"style":669},[2197],{"type":102,"value":1302},{"type":96,"tag":306,"props":2199,"children":2200},{"style":393},[2201],{"type":102,"value":874},{"type":96,"tag":306,"props":2203,"children":2204},{"style":319},[2205],{"type":102,"value":2206}," --secondary\n",{"type":96,"tag":105,"props":2208,"children":2209},{},[2210,2212,2218,2220,2226],{"type":102,"value":2211},"Then continue with steps 4 and 5. Each snapshot also has a ",{"type":96,"tag":127,"props":2213,"children":2215},{"className":2214},[],[2216],{"type":102,"value":2217},".checksum",{"type":102,"value":2219}," file next to it in the\nbucket, so ",{"type":96,"tag":127,"props":2221,"children":2223},{"className":2222},[],[2224],{"type":102,"value":2225},"sha256sum -c \u003Cname>.checksum",{"type":102,"value":2227}," works instead of pasting the hash.",{"type":96,"tag":222,"props":2229,"children":2230},{"icon":719},[2231],{"type":96,"tag":105,"props":2232,"children":2233},{},[2234,2236,2241,2243,2248,2250,2256,2258,2264,2266,2272],{"type":102,"value":2235},"MIP-8 activated on ",{"type":96,"tag":183,"props":2237,"children":2238},{},[2239],{"type":102,"value":2240},"testnet 2026-08-12",{"type":102,"value":2242}," and on ",{"type":96,"tag":183,"props":2244,"children":2245},{},[2246],{"type":102,"value":2247},"mainnet 2026-09-02 14:30 UTC",{"type":102,"value":2249},". Flag spelling\nchanged in ",{"type":96,"tag":127,"props":2251,"children":2253},{"className":2252},[],[2254],{"type":102,"value":2255},"monad-cli",{"type":102,"value":2257}," v0.16.0 — hyphens (",{"type":96,"tag":127,"props":2259,"children":2261},{"className":2260},[],[2262],{"type":102,"value":2263},"--load-binary-snapshot",{"type":102,"value":2265},"); older scripts use\nunderscores. Check ",{"type":96,"tag":127,"props":2267,"children":2269},{"className":2268},[],[2270],{"type":102,"value":2271},"monad-cli --help",{"type":102,"value":2273}," if your binary rejects one form.",{"type":96,"tag":289,"props":2275,"children":2277},{"id":2276},"related",[2278],{"type":102,"value":2279},"Related",{"type":96,"tag":105,"props":2281,"children":2282},{},[2283,2285,2292],{"type":102,"value":2284},"Monad's official ",{"type":96,"tag":111,"props":2286,"children":2289},{"href":2287,"rel":2288},"https://docs.monad.xyz/node-ops/node-recovery/hard-reset",[115],[2290],{"type":102,"value":2291},"hard reset",{"type":102,"value":2293}," guide,\nwhich lists the Monad Foundation and Category Labs snapshot buckets.",{"type":96,"tag":2295,"props":2296,"children":2297},"style",{},[2298],{"type":102,"value":2299},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":90,"searchDepth":340,"depth":340,"links":2301},[2302,2303],{"id":99,"depth":340,"text":103},{"id":173,"depth":340,"text":176,"children":2304},[2305,2306,2307,2308,2309,2310,2311],{"id":291,"depth":350,"text":294},{"id":552,"depth":350,"text":555},{"id":625,"depth":350,"text":628},{"id":744,"depth":350,"text":747},{"id":969,"depth":350,"text":972},{"id":1161,"depth":350,"text":1164},{"id":2276,"depth":350,"text":2279},"markdown","content:1.networks:4.monad:2.snapshots.md","content","1.networks/4.monad/2.snapshots.md","md",[2318,2320],{"_path":80,"title":16,"description":2319},"Brief overview on Monad",{"_path":86,"title":39,"description":2321},"Monitoring your Monad validator with monprobe, EmberStake's on-node Telegram bot",1789297456682]