ZFS Anlık Görüntüleri: Nasıl Oluşturulur, Geri Yüklenir ve Otomatikleştirilir
10 dakikalık okuma - 5 Mayıs 2026

Linux'ta ZFS anlık görüntülerinin nasıl oluşturulacağını, geri yükleneceğini ve otomatikleştirileceğini öğrenin. Sanoid ile komutlar, geri alma, saklama politikaları ve tesis dışı replikasyonu kapsar
ZFS Anlık Görüntüleri: Nasıl Oluşturulur, Geri Yüklenir ve Otomatikleştirilir
ZFS anlık görüntüsü, dosya sisteminizin salt okunur, zaman içinde bir kopyasıdır. Anında oluşturulur, veriler değişene kadar yer kaplamaz ve saniyeler içinde dosyaları geri almanızı veya kurtarmanızı sağlar. Sunucuları, VPS örneklerini veya kaybetmeyi göze alamayacağınız veriler içeren herhangi bir şeyi yönetiyorsanız, anlık görüntüler iş akışınızın bir parçası olmalıdır.
Bu yazı, ZFS anlık görüntülerinin nasıl çalıştığını, nasıl kullanılacağını ve yığılmamaları için saklama işleminin nasıl otomatikleştirileceğini ele almaktadır.
ZFS anlık görüntüleri nasıl çalışır?
ZFS bir copy-on-write (CoW) modeli kullanır. Bir anlık görüntü aldığınızda, ZFS herhangi bir veriyi çoğaltmaz. Sadece blok işaretçi ağacının mevcut durumunu kaydeder. Anlık görüntü orijinalleri referans almaya devam ederken, yeni yazmalar boş bloklara gider.
Bu, anlık görüntülerin veri kümesi boyutundan bağımsız olarak mikrosaniyeler içinde oluşturulduğu ve oluşturma sırasında sıfır ek alan tükettikleri anlamına gelir. Yalnızca canlı veri kümesi değiştikçe alan kullanmaya başlarlar, çünkü anlık görüntü aksi takdirde serbest bırakılacak orijinal blokları tutar.
Bu, tüm dosyaları tarayan ve kopyalayan rsync veya tar gibi dosya düzeyinde yedekleme araçlarından temelde farklıdır. Eğer 10GB'lık bir dosyanın 4KB'ını değiştirirseniz, rsync tüm dosyayı kopyalar. ZFS yalnızca 4KB'lık bloğu kaydeder.
Anlık görüntüler de değişmezdir. Çekirdek seviyesinde salt okunur olarak zorlanırlar, bu nedenle kullanıcı alanı işlemleri (fidye yazılımı dahil) bunları değiştiremez. ZFS'nin yerleşik sağlama toplamı ile birlikte bu, geri yüklemede veri bütünlüğünü doğrulayabileceğiniz anlamına gelir.
Anlık görüntüler oluşturma
Ön Koşullar
ZFS'nin kurulu ve bir havuzun ayarlanmış olması gerekir. Ubuntu 20.04+ üzerinde:
sudo apt update && sudo apt upgrade -y
sudo apt install zfsutils-linux -y
sudo modprobe zfsBir havuz oluşturun. Tek bir disk için (VPS'de tipiktir):
sudo zpool create tank /dev/sdbAyrılmış bir sunucuda yansıtılmış bir kurulum için, yeniden başlatmalardan sonra sorunları önlemek için aygıt adları yerine disk kimliklerini kullanın:
sudo zpool create tank mirror /dev/disk/by-id/ata-DISK1 /dev/disk/by-id/ata-DISK2Sıkıştırmayı etkinleştirin (LZ4 hızlı ve etkilidir):
sudo zfs set compression=lz4 tankArdından iş yükleriniz için veri kümeleri oluşturun:
sudo zfs create tank/web
sudo zfs create tank/databasesAnlık görüntü alma
Temel komut:
sudo zfs snapshot tank/web@before-updateZaman damgalı isimler için (cron ile kullanışlıdır):
sudo zfs snapshot tank/db@$(date +%Y%m%d_%H%M%S)Tüm alt veri kümelerini bir kerede yakalamak için özyinelemeli bayrağını kullanın:
sudo zfs snapshot -r tank@daily_backupDoğrulayın:
sudo zfs list -t snapshotAnlık görüntülerden geri yükleme
Dosyaları tek tek geri yükleme
Her ZFS veri kümesinin bağlama noktasında gizli bir .zfs/snapshot dizini vardır. Ls'de görünmeyecektir, ancak doğrudan ona gidebilirsiniz:
ls /tank/web/.zfs/snapshot/before-update/Tek bir dosyayı geri yüklemek için:
cp -p /tank/web/.zfs/snapshot/before-update/config/app.conf /tank/web/config/P bayrağı izinleri ve zaman damgalarını korur.
Tüm bir veri kümesini geri alma
Örneğin başarısız bir yükseltmeden sonra her şeyi geri almanız gerekiyorsa:
sudo zfs rollback tank/web@before-updateBu neredeyse anlıktır çünkü ZFS verileri kopyalamak yerine blok işaretçilerini günceller. Ancak yıkıcıdır: anlık görüntüden sonra yapılan tüm değişiklikler kalıcı olarak kaybolur.
Hedef ve mevcut durum arasında daha yeni anlık görüntüler varsa, ZFS geri alma işlemini engelleyecektir. Bunu zorlamak ve bu ara anlık görüntüleri kaldırmak için -r kullanın:
sudo zfs rollback -r tank/db@20260426_090000İyi bir alışkanlık: geri almadan önce mevcut (bozuk) durumun anlık görüntüsünü alın, böylece gerekirse bir geri dönüşünüz olur.
| Kurtarma yöntemi | Hız | Veri kaybı riski | İçin en iyisi |
|---|---|---|---|
.zfs aracılığıyla dosya geri yükleme | Dosya boyutuna göre değişir | Hiçbiri | Yanlışlıkla silme, tek dosya kurtarma |
| Tam geri alma | Anında | Yüksek (anlık görüntü sonrası tüm değişiklikleri kaybeder) | Başarısız yükseltmeler, sistem genelinde sorunlar |
| Test için klonlama | Anında | Yok (paralel bir veri kümesi oluşturur) | Geri alma işlemi yapmadan önce doğrulama |
Anlık görüntüleri yönetme ve budama
Anlık görüntüler sıfır boyutta başlar ancak altlarındaki canlı veriler değiştikçe büyür. Alan kullanımını kontrol etmek için:
zfs list -t snapshot -o name,used,refer,creationKULLANILAN sütunu, o anlık görüntüye özgü ne kadar alan olduğunu gösterir. REFER, anlık görüntü alındığında veri kümesinin toplam boyutunu gösterir.
Bir anlık görüntüyü silmek için:
sudo zfs destroy tank/web@before-updateDesene göre de silebilirsiniz:
sudo zfs destroy tank/web@daily-2026-04-%Her zaman önce kuru çalışma yapın:
sudo zfs destroy -nv tank/web@daily-%ZFS teknik olarak milyonlarca anlık görüntüyü işleyebilir, ancak performans veri kümesi başına birkaç binden sonra düşer. Zfs list ve zfs destroy gibi komutlar gözle görülür şekilde yavaşlar. Saklama süresini sıkı tutun.
Sanoid ile elde tutmayı otomatikleştirme
Sanoid, ZFS snapshot oluşturma ve budama işlemlerini otomatikleştirmek için kullanılan standart bir araçtır. Siz sanoid.conf dosyasında saklama politikalarını tanımlarsınız ve gerisini o halleder.
Tipik bir üretim yapılandırması şöyle görünebilir:
| İş yükü tipi | Saatlik | Günlük | Haftalık | Aylık |
|---|---|---|---|---|
| Standart üretim | 24-48 | 30 | 8 | 12 |
| Veritabanı (yüksek kayıp) | 72 | 30 | 12 | 24 |
| Günlükler / düşük öncelik | 12-24 | 7 | 0 | 3 |
| Statik medya | 0 | 7 | 0 | 3 |
Sanoid ayrıca frequently parametresi aracılığıyla saatlik anlık görüntüleri de destekler. Frequently = 96 ve frequent_period = 15 olarak ayarlandığında her 15 dakikada bir anlık görüntü alırsınız.
Sanoid'i cron aracılığıyla her dakika veya her 15 dakikada bir çalışacak şekilde programlayın; anlık görüntüleri otomatik olarak oluşturacak ve budayacaktır.
Zfs send ile site dışı replikasyon
Tek bir sunucudaki anlık görüntüler, yanlışlıkla yapılan değişikliklere ve yazılım arızalarına karşı koruma sağlar, ancak donanım kaybına karşı koruma sağlamaz. Bunun için SSH üzerinden zfs send ve zfs receive kullanarak site dışına replike edin:
zfs send tank/web@backup | ssh user@remote zfs receive backup/webArtımlı aktarımlar için (yalnızca son anlık görüntüden bu yana değişenleri gönderme):
zfs send -i tank/web@old_snap tank/web@new_snap | ssh user@remote zfs receive backup/webSanoid'in tamamlayıcı aracı syncoid, bu süreci otomatikleştirir ve artımlı gönderimler, hata kurtarma ve günlük tutma işlemlerini gerçekleştirir.
Fidye yazılımı koruması hakkında bir not
ZFS anlık görüntüleri çekirdek düzeyinde salt okunurdur, bu da standart kötü amaçlı yazılımların bunları değiştiremeyeceği veya şifreleyemeyeceği anlamına gelir. Bu güçlü bir savunma katmanıdır. Ancak kurşun geçirmez değildir: Bir saldırgan root erişimi elde ederse, verilerinizi şifrelemeden önce anlık görüntüleri silebilir.
Anlık görüntüler daha geniş bir stratejinin bir katmanı olmalıdır. Bunları tesis dışı replikasyon, kısıtlı kök erişimi ve ağ düzeyinde güvenlik ile birleştirin. Yalnızca anlık görüntülere güvenmeyin.
Video önerisi
Son düşünceler
ZFS snapshot'ları hızlıdır, alan verimlidir ve temellerini anladıktan sonra kullanımı kolaydır. Tesis dışı yedeklemelerin yerine geçmezler, ancak geleneksel yedekleme araçlarının yapamadığı bir boşluğu doldururlar: ihtiyaç duyduğunuz sıklıkta alabileceğiniz anında, sıfır ek yük kurtarma noktaları.
ZFS'yi bir VPS ya da özel sunucuda çalıştırıyorsanız Sanoid'i kurun, bir saklama politikası tanımlayın ve replikasyonu otomatikleştirin. Yapılandırması 30 dakika sürer ve bir şeyler ters gittiğinde saatler kazandırır. Bir FDC VPS veya özel sunucu üzerinde deneyin.

ZFS Anlık Görüntüleri: Nasıl Oluşturulur, Geri Yüklenir ve Otomatikleştirilir
Linux'ta ZFS anlık görüntülerinin nasıl oluşturulacağını, geri yükleneceğini ve otomatikleştirileceğini öğrenin. Sanoid ile komutlar, geri alma, saklama politikaları ve tesis dışı replikasyonu kapsar
10 dakikalık okuma - 5 Mayıs 2026
Bir VPS'de Redis nasıl kurulur ve kullanılır
9 dakikalık okuma - 7 Ocak 2026

Sorularınız mı var veya özel bir çözüme mi ihtiyacınız var?
Esnek seçenekler
Küresel erişim
Anında dağıtım
Esnek seçenekler
Küresel erişim
Anında dağıtım