---
title: "SLV Backup - เริ่มต้นใช้งานอย่างรวดเร็ว"
description: "สร้างการสำรองข้อมูลแบบเข้ารหัสและแบบเพิ่มหน่วยของ Solana node ของคุณด้วย SLV backup"
canonical: "https://erpc.global/th/doc/backup/quickstart/"
locale: "th"
---

# SLV Backup - เริ่มต้นใช้งานอย่างรวดเร็ว

## 🗄️ SLV Backup

SLV Backup สร้าง**การสำรองข้อมูลแบบเข้ารหัสและแบบเพิ่มหน่วย** ของ node ของคุณโดยใช้ [restic](https://restic.net/) ข้อมูลทั้งหมดถูกเข้ารหัสที่ฝั่งไคลเอนต์ด้วย AES-256 ก่อนการอัปโหลด — เซิร์ฟเวอร์ไม่เคยเห็นข้อมูลแบบ plaintext ของคุณ

> **โหมด Legacy**: SLV ยังรองรับการสำรองข้อมูลแบบ tar+zstd ที่ไม่เข้ารหัส (โดยไม่ใช้ `--restic`) ด้วย เราขอแนะนำอย่างยิ่งให้ใช้ `--restic` สำหรับการสำรองข้อมูลใหม่ทั้งหมด

### ข้อกำหนดเบื้องต้น

- ติดตั้ง SLV CLI บน node เป้าหมาย
- สิทธิ์ `sudo` (จำเป็นสำหรับการสำรองข้อมูลแบบเต็มดิสก์)
- เข้าสู่ระบบแล้ว (`slv login`) พร้อมการสมัครสมาชิกพื้นที่จัดเก็บข้อมูลที่ใช้งานอยู่
- ติดตั้ง `restic` แล้ว (`apt install restic`)

## สร้างการสำรองข้อมูลแบบเข้ารหัส

```bash
sudo slv backup create --restic --yes
```

```
🗄️  SLV Backup (restic mode)

  Region:    default
  Retention: 7 days

⚠️  Restic encryption password generated and saved to:
   /home/solv/.slv/restic-password
   BACK UP THIS FILE — without it, backups cannot be restored.

🔧 Initializing restic repository (if needed)...
📦 Creating restic backup...

Files:       151263 new,     0 changed,     0 unmodified
Dirs:        22486 new,     0 changed,     0 unmodified
Added to the repository: 4.107 GiB (1.837 GiB stored)

processed 151263 files, 4.366 GiB in 0:50
snapshot b6925e6d saved

✅ Restic backup complete
🧹 Applying retention policy (keep within 7 days)...
✅ Backup complete.
```

### สิ่งที่เกิดขึ้นในการรันครั้งแรก

1. รหัสผ่านสำหรับเข้ารหัสแบบสุ่มจะถูกสร้างขึ้นและบันทึกไว้ที่ `~/.slv/restic-password` (mode 0600)
2. restic repository จะถูกเริ่มต้นบน ERPC Cloud Storage
3. ดิสก์ทั้งหมดของคุณจะถูกสำรองข้อมูล (ยกเว้น system pseudo-filesystem)

### การรันครั้งถัดไป

เฉพาะไฟล์ที่มีการเปลี่ยนแปลงเท่านั้นที่จะถูกอัปโหลด (แบบเพิ่มหน่วย) การกำจัดข้อมูลซ้ำซ้อน (deduplication) ช่วยให้ต้นทุนพื้นที่จัดเก็บข้อมูลต่ำ

## แสดงรายการการสำรองข้อมูล

```bash
sudo slv backup list
```

แสดงทั้ง restic snapshot และการสำรองข้อมูลแบบ tar legacy ในพื้นที่จัดเก็บข้อมูลบนคลาวด์

## เรียกคืนข้อมูลจากการสำรองข้อมูล

เรียกคืน snapshot ล่าสุด:

```bash
sudo slv backup restore latest
```

เรียกคืน snapshot ที่ระบุ:

```bash
sudo slv backup restore b6925e6d
```

เรียกคืนการสำรองข้อมูลแบบ tar legacy:

```bash
sudo slv backup restore backup-mynode-20260318.tar.zst
```

## ตรวจสอบความสมบูรณ์ของการสำรองข้อมูล

หากต้องการรัน `restic check` ด้วยตนเอง ให้เชื่อมต่อด้วย access key สำหรับ storage ทั้งนี้ endpoint นี้ไม่รับ RPC API key

1. เปิด[หน้า Storage](https://dashboard.erpc.global/th/user/storage) ไปที่ **Access key สำหรับ storage** แล้วคลิก **ออก key** ส่วน `check` ใช้สิทธิ์ **อ่านอย่างเดียว** ก็เพียงพอ
2. คัดลอก **URL ของ restic repository** ที่แสดงทันทีหลังสร้าง key โดยจะแสดงเพียงครั้งเดียว หากทำหาย ให้เพิกถอน key แล้วออก key ใหม่
3. รัน `check` ด้วย URL นั้น:

```bash
sudo restic -r '<RESTIC_REPOSITORY_URL>' \
  --password-file ~/.slv/restic-password check
```

## ตั้งค่าการสำรองข้อมูลอัตโนมัติ (Cron)

```bash
sudo slv backup create --restic --cron daily
```

| ช่วงเวลา | คำอธิบาย |
|---|---|
| `daily` | รันวันละครั้ง |
| `weekly` | รันสัปดาห์ละครั้ง |
| `monthly` | รันเดือนละครั้ง |
| `off` | ลบ cron job |

### การเก็บรักษา (Retention)

โดยค่าเริ่มต้น snapshot ที่เก่ากว่า 7 วันจะถูกตัดทิ้งโดยอัตโนมัติ:

```bash
sudo slv backup create --restic --retention 14
```

## ปรับแต่งรายการยกเว้น

ดูรายการยกเว้นปัจจุบัน:

```bash
slv backup create --list-excludes
```

เพิ่ม path ที่ต้องการยกเว้น:

```bash
sudo slv backup create --restic --exclude /home/solv/ledger --exclude /home/solv/snapshots
```

## การเข้ารหัสและความปลอดภัย

| คุณสมบัติ | รายละเอียด |
|---|---|
| **การเข้ารหัส** | AES-256-CTR + Poly1305-AES (ฝั่งไคลเอนต์) |
| **ความสมบูรณ์** | พื้นที่จัดเก็บแบบ content-addressable ด้วย SHA-256 |
| **การกำจัดข้อมูลซ้ำซ้อน** | การแบ่งข้อมูลแบบ content-defined chunking |
| **การมองเห็นที่ฝั่งเซิร์ฟเวอร์** | ไม่มี — เซิร์ฟเวอร์เห็นเฉพาะ blob ที่เข้ารหัสแล้วเท่านั้น |
| **ไฟล์รหัสผ่าน** | `~/.slv/restic-password` (mode 0600) |
| **ยกเว้นจากการสำรองข้อมูล** | `~/.slv/restic-password`, `~/.slv/api.yml`, `~/.slv/backup.env` |

> ⚠️ **สำคัญ**: สำรองไฟล์ `~/.slv/restic-password` ของคุณแยกต่างหาก หากไม่มีไฟล์นี้ การสำรองข้อมูลของคุณจะสูญหายอย่างไม่สามารถกู้คืนได้

## รายการอ้างอิงตัวเลือก

| ตัวเลือก | คำอธิบาย |
|---|---|
| `--restic` | ใช้ restic สำหรับการสำรองข้อมูลแบบเข้ารหัสและแบบเพิ่มหน่วย (แนะนำ) |
| `-r, --region <region>` | region ของพื้นที่จัดเก็บ (ค่าเริ่มต้น: eu) |
| `--exclude <path>` | path เพิ่มเติมที่ต้องการยกเว้น (ใช้ซ้ำได้) |
| `--include <path>` | นำออกจากรายการยกเว้นเริ่มต้น (ใช้ซ้ำได้) |
| `--list-excludes` | แสดงรายการยกเว้นปัจจุบันแล้วออก |
| `--retention <days>` | ตัด snapshot ที่เก่ากว่า N วันทิ้ง (ค่าเริ่มต้น: 7) |
| `--cron <interval>` | ตั้งค่า cron job (daily/weekly/monthly/off) |
| `-y, --yes` | ข้ามการยืนยัน |
| `--upload` | Legacy: อัปโหลดการสำรองข้อมูลแบบ tar ไปยังพื้นที่จัดเก็บข้อมูลบนคลาวด์ |
| `-o, --output <path>` | Legacy: path ของไฟล์ผลลัพธ์สำหรับการสำรองข้อมูลแบบ tar |

## โหมด Legacy (tar+zstd)

เพื่อความเข้ากันได้กับเวอร์ชันก่อนหน้า ยังคงรองรับการสำรองข้อมูลแบบ tar ที่ไม่เข้ารหัส:

```bash
sudo slv backup create --upload --yes     # Unencrypted tar backup
```

> **หมายเหตุ**: การสำรองข้อมูลแบบ legacy ไม่ได้เข้ารหัส เราขอแนะนำให้ย้ายไปใช้ `--restic` สำหรับการสำรองข้อมูลใหม่ทั้งหมด
