ধরা যাক আমার কাছে একটি জেডএফএস ফাইল সিস্টেম রয়েছে যাতে ভার্চুয়াল মেশিন ডিস্ক চিত্র রয়েছে
/tank/examplevm/examplevm-flat.vmdk
আসুন ধরে নেওয়া যাক আমি জেডএফএস ফাইল সিস্টেমের প্রতিদিনের স্ন্যাপশটগুলি গ্রহণ করি, যেমন
$ zfs snapshot tank@20120716
$ zfs snapshot tank@20120717
স্পষ্টতই, প্রতিটি দৈনিক স্ন্যাপশটের মধ্যে সময়কালে, আমার মডেলটিভিএম-ফ্ল্যাট.ভিএমডিকে পরিবর্তন করা হয় (বেশিরভাগ ক্ষেত্রে, চিত্রের আকার স্থির থাকে, তবে ভার্চুয়াল ডিস্কের ব্লকগুলি সংশোধন করা হয়)।
তদনুসারে, জেডএফএস ডিফ কমান্ড ফাইলটিকে দুটি স্ন্যাপশটের মধ্যে সংশোধিত হিসাবে রিপোর্ট করবে:
$ zfs diff tank/@20120716 tank@20120717
M /tank/examplevm/examplevm-flat.vmdk
ফাইলটি সংশোধন করা হয়েছে তা জেনে রাখা ভাল, আমি ভিএমডিকে সংশোধিত বাইট / ব্লকের সংখ্যার প্রতি আরও আগ্রহী হব।
অতএব, আমি নিম্নলিখিত প্রশ্নগুলির কোনও ইঙ্গিতগুলিতে আগ্রহী:
- দুটি স্ন্যাপশটের মধ্যে একটি নির্দিষ্ট ফাইলে পরিবর্তিত ব্লকের সংখ্যার প্রতিবেদন করার জন্য কি জেডএফএসের কোনও বৈশিষ্ট্য রয়েছে?
- এমন কি অন্য কোনও সরঞ্জাম রয়েছে যা দুটি ফাইল সিস্টেমের চিত্রগুলিকে বাইনারি দেয় এবং পরিবর্তিত ব্লক বা বাইটের সংখ্যা জানায়? আমি বুঝতে পারি যে এটি
cmp –l file1 file2 | wc –l
করে তবে এটি ভয়াবহভাবে, মারাত্মকভাবে ধীর।