Yedekleme ve felaket kurtarma yazılımı üreten Veeam şirketi, yazılımının çekirdeğe dahil edilmesini önerdi. Linux Blksnap modülü, blok aygıt anlık görüntüleri oluşturmak ve blok aygıtlardaki değişiklikleri izlemek için bir mekanizma uygular. Anlık görüntülerle çalışmak için, blksnap adlı bir komut satırı yardımcı programı ve blksnap.so adlı bir kütüphane geliştirilmiştir; bu sayede kullanıcı alanı, ioctl çağrıları aracılığıyla çekirdek modülüyle etkileşim kurabilir.
Modülü oluşturmanın amacı, çalışmayı durdurmadan sürücülerin ve sanal disklerin yedeklenmesini organize etmektir - modül, devam eden değişikliklere bağlı olmayan, yedekleme için yalıtılmış bir dilim sağlayarak, tüm blok aygıtının mevcut durumunu bir anlık görüntüde yakalamanıza olanak tanır . Blksnap'in önemli bir özelliği, birkaç blok cihaz için aynı anda anlık görüntüler oluşturma yeteneğidir; bu, yalnızca blok cihaz düzeyinde veri bütünlüğünü sağlamaya değil, aynı zamanda yedeklemedeki farklı blok cihazlarının durumunda tutarlılık sağlamaya da olanak tanır.
Blok cihaz alt sistemindeki (bdev) değişiklikleri izlemek için, G / Ç isteklerini engellemenizi sağlayan filtreler ekleme yeteneği eklendi. blksnap, yazma isteklerini engelleyen, eski değeri okuyan ve anlık görüntünün durumunu belirleyen ayrı bir değişiklik listesine kaydeden bir filtre uygular. Bu yaklaşımla, bir blok cihazla çalışma mantığı değişmez, orijinal blok cihazdaki kayıt, anlık görüntülerden bağımsız olarak olduğu gibi gerçekleştirilir, bu da veri bozulma olasılığını ortadan kaldırır ve öngörülemeyen kritik hatalar durumunda bile sorunları önler. blksnap'te ve değişiklikler için ayrılan alanın taşması.
Modül ayrıca, artımlı yedeklemeleri uygulamak için yararlı olabilecek son ve herhangi bir önceki anlık görüntü arasında hangi blokların değiştirildiğini belirlemenize olanak tanır. Değişiklikleri kaydetmek için, anlık görüntünün durumuna göre, herhangi bir blok cihazında keyfi bir sektör aralığı tahsis edilebilir; bu, değişiklikleri blok cihazlarda FS içindeki ayrı dosyalara kaydetmenize olanak tanır. Değişikliklerin saklanacağı alanın boyutu, anlık görüntü oluşturulduktan sonra bile herhangi bir zamanda artırılabilir.
Blksnap, Veeam Agent'ın bir parçası olan veeamsnap modülünün koduna dayanmaktadır. LinuxAncak ana çekirdek kompozisyonunda teslimatın özelliklerini dikkate alarak yeniden düzenlendi. LinuxBlksnap ve Veeamsnap arasındaki kavramsal fark, G/Ç'yi yakalayan ayrı bir bdevfilter bileşeni yerine, blok aygıtına bağlı bir filtre sisteminin kullanılmasıdır.
Kaynak: opennet.ru
