> ## Documentation Index
> Fetch the complete documentation index at: https://daehan-base.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# 노드 스냅샷

> Base 노드의 초기 동기화 시간을 줄이기 위한 스냅샷 복원 방법을 안내합니다. 메인넷과 테스트넷 아카이브 및 프룬드 스냅샷을 지원합니다.

스냅샷을 사용하면 Base 노드의 초기 동기화에 필요한 시간을 크게 줄일 수 있습니다. 스냅샷은 정기적으로 업데이트됩니다.

Base 노드를 운영 중이거나 운영할 예정이라면 스냅샷에서 복원하여 초기 동기화를 빠르게 할 수 있습니다. 아래 단계를 주의 깊게 따르세요.

## 스냅샷에서 복원하기

이 단계는 클론된 `node` 디렉토리(`docker-compose.yml`이 포함된 디렉토리)에 있다고 가정합니다.

1. **데이터 디렉토리 준비**:
   * **Docker를 처음 실행하기 전에** Docker 컨테이너에 매핑될 호스트 머신의 데이터 디렉토리를 생성합니다. 이 디렉토리는 `docker-compose.yml` 파일의 `volumes` 매핑과 일치해야 합니다.
     ```bash theme={null}
     mkdir ./reth-data
     ```
   * 이전에 노드를 실행했고 기존 데이터 디렉토리가 있는 경우 **노드를 중지**(`docker compose down`)하고, 기존 디렉토리의 \_내용\_을 삭제(예: `rm -rf ./reth-data/*`)한 후 진행합니다.

2. **스냅샷 다운로드**: 아래 표에서 네트워크와 클라이언트에 적합한 스냅샷을 선택합니다. `wget`(또는 유사한 도구)을 사용하여 `node` 디렉토리로 다운로드합니다.

   | 네트워크 | 스냅샷 유형    | 다운로드 명령어 (`wget …`)                                                                                                      |
   | ---- | --------- | ------------------------------------------------------------------------------------------------------------------------ |
   | 테스트넷 | 아카이브 (권장) | `wget -c https://sepolia-reth-archive-snapshots.base.org/$(curl https://sepolia-reth-archive-snapshots.base.org/latest)` |
   | 테스트넷 | 프룬드       | `wget -c https://sepolia-reth-pruned-snapshots.base.org/$(curl https://sepolia-reth-pruned-snapshots.base.org/latest)`   |
   | 메인넷  | 아카이브 (권장) | `wget -c https://mainnet-reth-archive-snapshots.base.org/$(curl https://mainnet-reth-archive-snapshots.base.org/latest)` |
   | 메인넷  | 프룬드       | `wget -c https://mainnet-reth-pruned-snapshots.base.org/$(curl https://mainnet-reth-pruned-snapshots.base.org/latest)`   |

   <Note>
     스냅샷 아카이브(`.tar.gz` / `.tar.zst` 파일)를 다운로드하고 내용을 추출하기에 충분한 여유 디스크 공간이 있는지 확인하세요. 추출된 데이터는 아카이브보다 훨씬 큽니다.
   </Note>

3. **스냅샷 추출**: 다운로드한 스냅샷 아카이브를 압축 해제합니다. `snapshot-filename`을 실제 다운로드한 파일명으로 교체하세요:

   ```bash theme={null}
   tar -xzvf <snapshot-filename.tar.gz>

   # .tar.zst 파일의 경우
   tar -I zstd -xvf <snapshot-filename.tar.zst>
   ```

4. **데이터 이동**: 추출 과정에서 `reth` 디렉토리가 생성될 수 있습니다.

   * 해당 디렉토리의 \_내용\_을 1단계에서 생성한 데이터 디렉토리로 이동합니다:

     ```bash theme={null}
     mv ./reth/* ./reth-data/
     rm -rf ./reth    # 빈 추출 폴더 정리
     ```

   * 목표는 체인 데이터 디렉토리(예: `chaindata`, `nodes`, `segments` 등)가 중첩된 하위 폴더가 아닌 `./reth-data` 내에 직접 있는 것입니다.

5. **노드 시작**: 스냅샷 데이터가 준비되었으면 Base 노드 폴더의 루트로 돌아가서 노드를 시작합니다:

   ```bash theme={null}
   cd ..
   docker compose up --build
   ```

노드가 스냅샷의 마지막 블록부터 동기화를 시작해야 합니다.

6. **확인 및 정리**: 노드 로그(`docker compose logs -f <service_name>`)를 모니터링하거나 [동기화 모니터링](/base-chain/node-operators/run-a-base-node#syncing) 명령을 사용하여 노드가 스냅샷의 블록 높이에서 동기화를 시작하는지 확인합니다. 확인되면 다운로드한 스냅샷 아카이브(`.tar.gz` 파일)를 안전하게 삭제하여 디스크 공간을 확보할 수 있습니다.
