Btrfs प्रत्येक फ़ाइल के लिए crc32c चेकसम की गणना करता है। क्या कोई ऐसा तरीका है जो मैं देख सकता हूं कि चेकसम को संग्रहीत किया गया है (जैसा कि फ़ाइल को पढ़ने और इसे पुनर्गणना करने के लिए विरोध किया गया है)?
Btrfs प्रत्येक फ़ाइल के लिए crc32c चेकसम की गणना करता है। क्या कोई ऐसा तरीका है जो मैं देख सकता हूं कि चेकसम को संग्रहीत किया गया है (जैसा कि फ़ाइल को पढ़ने और इसे पुनर्गणना करने के लिए विरोध किया गया है)?
जवाबों:
Btrfs प्रत्येक फ़ाइल के लिए crc32c चेकसम की गणना करता है।
यह सही नहीं है। दोनों ओपन-सोर्स चेकसममिंग फाइल-सिस्टम (ZFS और BTRFS) प्रत्येक लॉजिकल ब्लॉक के लिए एक चेकसम की गणना करते हैं (अनाम स्रोत Awe का उपयोग सही है)। यह ऑन-डिस्क डेटा का एक चेकसम है।
यदि फ़ाइल-सिस्टम में संपीड़न सक्षम (एक तेजी से सामान्य सेटिंग) है, तो यह चेकसम संपीड़न के बाद डेटा का है। इसका मतलब यह है कि, भले ही फ़ाइल एक तार्किक ब्लॉक में फिट हो, यह संभव है (और तेजी से संभव है) कि फ़ाइल-सिस्टम का चेकसम डेटा आपके लिए बेकार हो जाएगा।
यदि आपको फ़ाइल चेकसम की आवश्यकता है, तो इसे प्राप्त करने का सबसे अच्छा तरीका इसकी गणना करना होगा।
सुपरयुजर के समान उत्तर से:
मुझे विश्वास नहीं है कि ZFS फाइल सिस्टम से ब्लॉक स्तर के चेकसम को निकालना संभव है, लेकिन चूंकि चेकसम ब्लॉक स्तर पर हैं, न कि फाइल स्तर पर, यह शायद वैसे भी आपकी मदद नहीं करेगा।
मतलब। Btrfs द्वारा प्रति फ़ाइल में चेकसम नहीं बनाए गए हैं। यह उल्लेख किया गया है कि @superuser एक निरीक्षण-आंतरिक उपकमांड की कार्यक्षमता को जोड़ने के लिए एक पैच है: btrfs निरीक्षण-आंतरिक डंप-सीसम इस डंप - सभी ब्लॉक के लिए किसी दिए गए फ़ाइल द्वारा कब्जा किया जा रहा है - ब्लॉक चेकसम। बहुवचन, जब तक फ़ाइल एक ब्लॉक में फिट नहीं होती है।
मुझे लगता है कि btrfs CLI के माध्यम से यह संभव नहीं है, लेकिन यहां एक स्रोत कोड है, जो मुझे आशा है, एक btrfs फाइलसिस्टम में एकल ब्लॉक के लिए च्च्सम पढ़ने में आपकी मदद कर सकता है। जड़ें चाहिए।