> For the complete documentation index, see [llms.txt](https://docs.roomit.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roomit.xyz/mainnet/selfchain/infrastructures/snapshot.md).

# Snapshot

## How to Deploy Snapshot?

1. Install Compression/Decompression Tools

```bash
sudo apt install lzma -y
```

2. Download Snapshot

```bash
SNAPSHOT=$(curl -s https://roomit.xyz/snapshot/mainnet/selfchain/ | grep -i "<a href=" | grep lzma | grep -v md5sum | awk -F"=" '{print $2}' |  sed 's/"//g' | sed "s/>//g" | sed "s/ //g")
wget -c https://roomit.xyz/snapshot/mainnet/selfchain/${SNAPSHOT} --inet4-only
```

3. Stop Your Service Blockchain

```bash
sudo systemctl stop selfchain-node
```

> > Notes : for systemd init blockchain, adjust with your name of service. **systemctl stop selfchaind**

4. Backup State Validator

```bash
cp ${HOME}/.selfchain/data/priv_validator_state.json ${HOME}/.selfchain/priv_validator_state.json
```

4. Reset Node Blockchain

```bash
selfchaind tendermint unsafe-reset-all --home $HOME/.selfchain --keep-addr-book
```

5. Extract Data Snapshot

```bash
lzma -d -c ${SNAPSHOT} | tar -xv -C $HOME/.selfchain 
```

6. Restore State Validator

```bash
cp ${HOME}/.selfchain /priv_validator_state.json ${HOME}/.selfchain/data/priv_validator_state.json
```

7. Start Node Blockchain

```bash
sudo systemctl start selfchain-node
```
