Anlık görüntüleri LVM olmadan kullanabilmek için Sanal Kutu’daki VM’leri barındırmak için BTRFS kullanmak istiyorum. Teoride CoW
, performans nedenlerinden ötürü her zaman davranışa ihtiyacım yok ve kullanmaya nodatacow
ihtiyacım yok gibi görünüyor. Bunun yerine sahip olmak istediğim bir yaklaşım, Windows ve NTFS'in kullandığı gibi görünüyor: Veriler her zaman olmadan değişiyor CoW
, ancak biri bir dosya sistemi görüntüsü oluşturuyorsa, mevcut verileri bu verileri kopyalayarak uzak tutuyor eğer herhangi bir şekilde değiştirilecekse. Önemli olan, bunun anlık görüntü başına yalnızca bir kez ve gerçekten yalnızca değiştirilmiş bloklar için tam olarak bir kez meydana geldiği görünüyor. Bu nedenle, değiştirilecek bir bloğun ilk önce kopyalanmasından sonra, aynı bloğa müteakip tüm değişiklikler, yine bir CoW
davranış olmadan tekrar uygulanır .
Orijinal veri bloğunu güvenli bir yere kopyalamanın yanı sıra, performans perspektifinden bu bana çok mantıklı geliyor ve VM'leri barındırmak için tam da bu davranışa sahip olmak istiyorum. Bunlar her zaman bazı veriler yazıyor ve CoW
tüm bu değişiklikler için nasıl bir davranışa ihtiyacım olduğunu anlamıyorum .
Sadece CoW
bir dosya sistemi anlık görüntüsü oluşturduktan sonra istiyorum , örneğin yedekleme amacıyla. Daha sonra CoW
, enstantanelerimi ihtiyacım olduğu sürece tutarlı tutabilmek için elbette ihtiyacım var. Fakat yine de, anlık görüntüleri oluşturduktan sonra bile CoW
, tüm veriler için sonsuza dek ihtiyacım olmayacak , ancak daha sonra değişen bloklar için sadece bir kez. İlk değişiklikten sonraki tüm değişiklikler basitçe olduğu gibi uygulanabilir CoW
.
BTRFS belgeleri hakkındaki düşüncelerime göre, CoW
bir dosyaya bir kez gelirse, sonsuza dek devam eder. Ama elbette yanlış olabilirim ...
Peki, BTRFS ile mümkün olanı yapmak ister miyim?