Btrfs her dosya için bir crc32c sağlama toplamı hesaplar. Hangi sağlama toplamının depolandığını görüntülememin bir yolu var mı (sadece dosyayı okumak ve yeniden hesaplamak yerine)?
Btrfs her dosya için bir crc32c sağlama toplamı hesaplar. Hangi sağlama toplamının depolandığını görüntülememin bir yolu var mı (sadece dosyayı okumak ve yeniden hesaplamak yerine)?
Yanıtlar:
Btrfs her dosya için bir crc32c sağlama toplamı hesaplar.
Bu doğru değil. Her iki açık kaynak sağlama toplamı dosya sistemi (ZFS ve BTRFS), her mantıksal blok için bir sağlama toplamı hesaplar (kullanılan adlandırılmamış kaynak Awe doğrudur). Bu, diskteki verilerin bir sağlama toplamıdır.
Dosya sisteminde sıkıştırma etkinleştirilmişse (giderek yaygınlaşan bir ayar), bu sağlama toplamı sıkıştırmadan sonraki verilerdir. Bu, dosya bir mantıksal bloğa sığsa bile, dosya sisteminin sağlama toplamı verilerinin sizin için yararsız olması (ve gittikçe artan bir olasılıkla) anlamına gelir.
Bir dosya sağlama toplamına ihtiyacınız varsa, onu almanın en iyi yolu hesaplamaktır.
Süper kullanıcıdaki benzer bir cevaptan:
ZFS dosya sisteminden blok düzeyi sağlama toplamlarını ayıklamanın mümkün olduğuna inanmıyorum, ancak sağlama toplamları dosya düzeyinde değil blok düzeyinde olduğundan, muhtemelen size yardımcı olmaz.
Anlam. Sağlama toplamları btrfs tarafından dosya başına oluşturulmaz. Süper kullanıcı, denetleme-iç alt komutuna bir işlevsellik eklemek için bir yama olduğu belirtilmiştir: btrfs denetleme-iç dökümü-toplamı - bu dökümü - belirli bir dosya tarafından işgal edilen tüm bloklar için - blok sağlama toplamları. Çoğul, dosya bir bloğa sığmazsa.
Bence bu btrfs CLI ile mümkün değil, ama burada bir btrfs dosya sisteminde tek bir blok için chechsum okumanıza yardımcı olabilecek bir kaynak kodu var. Kök gerekiyor.