Як я бачу контрольну суму файлу btrfs?


12

Btrfs обчислює контрольну суму crc32c для кожного файлу. Чи є спосіб я побачити, яка контрольна сума зберігається (на відміну від простого читання файлу та його перерахунку)?


Опублікував відповідь на подібне запитання: superuser.com/a/1030443/44360
— webminal.org

Відповіді:


3

Btrfs обчислює контрольну суму crc32c для кожного файлу.

Це неправильно. Обидві файлові системи з відкритим кодом контрольної суми (ZFS та BTRFS) обчислюють контрольну суму для кожного логічного блоку (правильне використання неназваного джерела Awe правильне). Це контрольна сума даних на диску.

Якщо у файловій системі увімкнено стиснення (все більш поширене налаштування), ця контрольна сума складається з даних після стиснення. Це означає, що навіть якщо файл вміщується в один логічний блок, можливо (і все більш імовірно), що дані контрольної суми файлової системи вам будуть марні.

Якщо вам потрібна контрольна сума файлів, найкращим способом її отримання було б її обчислити.


1

З аналогічної відповіді у суперпользователя:

Я не вірю, що можна витягти контрольні суми рівня блоку з файлової системи ZFS, але оскільки контрольні суми знаходяться на рівні блоку, а не на рівні файлу, це, мабуть, не допоможе тобі.

Значення. Контрольні суми не створюються в btrfs за файлом. Згадується @superuser є патч для додавання функціональності до внутрішньої підкоманди inspect: btrfs перевіряють внутрішній dump-csums цей дамп - для всіх блоків, зайнятих заданим файлом, - блок контрольних сум. Множина, якщо файл не вписується в один блок.


1
Будь ласка, посилайтесь на відповідь, яку ви цитуєте, та вкажіть її автора.
— Скотт

для чого? Це НЕ відповідь на власне питання. Цитата швидше пояснює, чому технічно це неможливо через неправильні припущення під час постановки питання. Це не повторення відповіді.
— Awe

1
Оскільки (1)  цитувати чужі слова без ідентифікації автора - це плагіат , і (2) якщо ви цитуєте чужі слова, не ідентифікуючи автора, ви не даєте читачеві ніякої можливості оцінити достовірність твердження.
— Скотт


0

Я думаю, що це неможливо через CLI btrfs, але тут є вихідний код, який, я сподіваюся, може допомогти вам прочитати чехсу для одного блоку у файловій системі btrfs. Корінь потребує.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.