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

🗄️ SLV Backup

SLV Backup สร้างการสำรองข้อมูลแบบเข้ารหัสและแบบเพิ่มหน่วย ของ node ของคุณโดยใช้ restic ข้อมูลทั้งหมดถูกเข้ารหัสที่ฝั่งไคลเอนต์ด้วย 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
text
🗄️  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

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

bash
sudo restic -r rest:https://<apiKey>:[email protected]/v3/storage/restic/ \
  --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>พื้นที่จัดเก็บข้อมูล (ค่าเริ่มต้น: eu)
--exclude <path>path เพิ่มเติมที่ต้องการยกเว้น (ใช้ซ้ำได้)
--include <path>นำออกจากรายการยกเว้นเริ่มต้น (ใช้ซ้ำได้)
--list-excludesแสดงรายการยกเว้นปัจจุบันแล้วออก
--retention <days>ตัด snapshot ที่เก่ากว่า N วันทิ้ง (ค่าเริ่มต้น: 7)
--cron <interval>ตั้งค่า cron job (daily/weekly/monthly/off)
-y, --yesข้ามการยืนยัน
--uploadLegacy: อัปโหลดการสำรองข้อมูลแบบ tar ไปยังพื้นที่จัดเก็บข้อมูลบนคลาวด์
-o, --output <path>Legacy: path ของไฟล์ผลลัพธ์สำหรับการสำรองข้อมูลแบบ tar

โหมด Legacy (tar+zstd)

เพื่อความเข้ากันได้กับเวอร์ชันก่อนหน้า ยังคงรองรับการสำรองข้อมูลแบบ tar ที่ไม่เข้ารหัส:
bash
sudo slv backup create --upload --yes     # Unencrypted tar backup
หมายเหตุ: การสำรองข้อมูลแบบ legacy ไม่ได้เข้ารหัส เราขอแนะนำให้ย้ายไปใช้ --restic สำหรับการสำรองข้อมูลใหม่ทั้งหมด