آموزش گرفتن Snapshot و بازیابی (Restore) در LVM – سطح پیشرفته پرینت


## 📸 آموزش گرفتن Snapshot و بازیابی (Restore) در LVM – سطح پیشرفته

**Snapshot در LVM** ابزاری قدرتمند برای گرفتن یک نسخه‌ی لحظه‌ای (Point-in-Time) از یک حجم منطقی (Logical Volume) است که می‌تواند در مواقعی مانند تست، بکاپ یا بازگردانی اطلاعات به‌کار رود.

---

## 🔍 Snapshot چیست؟

یک **snapshot** در LVM به‌صورت **copy-on-write** عمل می‌کند. یعنی داده‌های اصلی تا زمانی‌که تغییر نکنند، کپی نمی‌شوند؛ به همین دلیل سرعت و کارایی بالایی دارد، اما **نیاز به فضای کافی** در Volume Group دارد.

---

## 🛠️ ساخت Snapshot در LVM

### ✅ سناریو: گرفتن snapshot از LV اصلی به نام `data_lv` در Volume Group به نام `vg1`

### 1️⃣ بررسی فضای خالی:

```bash
vgs
```

### 2️⃣ ایجاد Snapshot (مثلاً 1 گیگ):

```bash
lvcreate -s -L 1G -n data_snap /dev/vg1/data_lv
```

📌 `-s`: مشخص می‌کند که snapshot است
📌 `-L 1G`: فضای اختصاصی برای snapshot (مراقب باش کوچک نباشد)

### 3️⃣ مانت Snapshot (اختیاری – فقط برای مشاهده یا تست):

```bash
mkdir /mnt/snap
mount /dev/vg1/data_snap /mnt/snap
```

> حالا می‌توانی محتوای snapshot را مشاهده یا بکاپ بگیری.

---

## 🔁 بازیابی Snapshot در LVM

🛑 هشدار: این عملیات تمام تغییرات روی LV اصلی بعد از گرفتن snapshot را حذف می‌کند!

### 1️⃣ آن‌مانت کردن LV اصلی (اگر مانت است):

```bash
umount /dev/vg1/data_lv
```

### 2️⃣ بازگردانی Snapshot:

```bash
lvconvert --merge /dev/vg1/data_snap
```

📌 این دستور Snapshot را با LV اصلی ترکیب و آن را به زمان Snapshot برمی‌گرداند.

### 3️⃣ ریبوت یا مانت مجدد:

در برخی موارد نیاز است که سیستم ریبوت شود تا تغییرات کامل اعمال شوند:

```bash
reboot
```

یا:

```bash
mount /dev/vg1/data_lv /mnt/data
```

---

## 🧹 حذف Snapshot (اگر دیگر نیاز نیست):

```bash
lvremove /dev/vg1/data_snap
```

---

## 📌 نکات مهم

* Snapshotها **دائمی نیستند**. اگر فضای اختصاص‌یافته به snapshot پر شود، snapshot خراب می‌شود.
* از snapshotها بیشتر برای **بکاپ موقت، تست یا Rollback سریع** استفاده می‌شود.
* همیشه فضای مناسب در VG برای ساخت snapshot در نظر بگیر.

---

## ✅ جمع‌بندی

قابلیت snapshot در LVM ابزاری فوق‌العاده برای گرفتن نسخه موقت از داده‌هاست. در مواقعی مثل ارتقای نرم‌افزار، تست تغییرات یا بازیابی سریع، snapshot می‌تواند از فاجعه جلوگیری کند.

 


آیا این پاسخ به شما کمک کرد؟

  • 0
« برگشت