অনুলিপি করা ফাইলগুলির যথার্থতা পরীক্ষা করুন


14

আমি অনুলিপি বলার পরে 50+ গিগাবাইট (30,000 ফাইলগুলি বিভিন্ন ফর্ম্যাট সহ ফাইলগুলি) অভ্যন্তরীণ হার্ড ড্রাইভ থেকে একটি বাহ্যিক ড্রাইভে যাওয়ার ফাইলগুলি কি সবকিছু ঠিকভাবে অনুলিপি করা হয়েছে তা খুঁজে পাওয়ার কোনও উপায় আছে? এছাড়াও যদি আমি অপারেশনটি বাতিল করে মাঝখানে থামি এবং পরে অপারেশন চালিয়ে যাওয়ার সময় সংহত হয়ে যাই তবে সঠিকতাটি কি আঘাত হানে?

আমি এর মতো অ্যাপ্লিকেশনগুলি ব্যবহার করতে পারি back-in-timeতবে আমি ফাইলগুলি অনুলিপি করতে খুব পছন্দ করি এবং পরের বারের জন্য আমি copyঅপারেশনটি ব্যবহার করতে চাই এবং mergeপরিবর্তে বলি replace। বিপুল সংখ্যক ফাইল অনুলিপি করার সময় কি এটি যুক্তিযুক্ত?


2
আপনি এখানে একটি উত্তর পেতে পারেন ।
তক্কাত

উত্তর:


17

আমি ব্যাকআপগুলি / পুনরুদ্ধারগুলি যাচাই করতে এবং মাঝে মধ্যে একটি RAID- এ ফাইল সিস্টেমের দুর্নীতির জন্য পরীক্ষা করতে হ্যাশদীপ ব্যবহার করছি ।

আপনার ডিস্কগুলির পড়ার গতির পাশাপাশি আপনি কোন হ্যাশ ফাংশনগুলি ব্যবহার করেন (কিছু অন্যের তুলনায় কিছুটা সিপিইউ নিবিড় থাকে) তার উপর গতি নির্ভর করে। আমার সিস্টেমে hashdeepএমডি 5 এবং 300 এমবি / সেগুলি পড়ার গতি দিয়ে প্রায় 1 টিবি / ঘন্টা প্রক্রিয়াকরণ বা যাচাই করতে পারে।


চেকসাম গণনা করা এবং একটি ফাইলে সেগুলি সঞ্চয় করার উদাহরণ:

cd my-data
hashdeep -rlc md5 . > ~/checksums.txt

পরামিতি:

  • r - পুনরাবৃত্তি
  • l - আপেক্ষিক পাথ ব্যবহার করুন
  • c - হ্যাশ ফাংশন নির্দিষ্ট করুন
  • . - বর্তমান ডিরেক্টরি থেকে পুনরাবৃত্তি শুরু
  • > - নির্দিষ্ট ফাইলে আউটপুট পুনর্নির্দেশ

দেখুন man পৃষ্ঠা


চেকসাম যাচাই করা এবং পার্থক্যের একটি তালিকা মুদ্রণের উদাহরণ:

$ cd /mnt/my-backup
$ hashdeep -ravvl -k ~/checksums.txt .
hashdeep: Audit passed
          Files matched: 40914
Files partially matched: 0
            Files moved: 0
        New files found: 0
  Known files not found: 0

পরামিতি:

  • a - নিরীক্ষণ (পরিচিত চেকসামগুলির তালিকার সাথে তুলনা করুন)
  • v- ভার্জোজ (মিলের তালিকার একাধিক তালিকা পেতে, একাধিক vগুলি এর অর্থ আরও ভার্বোজ)
  • k - পরিচিত হ্যাশ ফাইল

নোট করুন যে মার্চ 2016 হিসাবে পরিত্যক্তhashdeep বলে মনে হচ্ছে ।


14

এটি rsync এর জন্য নিখুঁত কাজ বলে মনে হচ্ছে । Rsync বিভিন্ন তুলনা করে এবং অনুলিপি করছে।

rsyncযখন আমি তোমার প্রশ্ন দেখে ইউটিলিটি প্রথম আমার মনের মধ্যে popped। নীচের মতো কিছু করা দ্রুত ডিরেক্টরিগুলিতে ফাইলগুলি প্রদর্শিত হতে পারে aতবে এতে নেই b:

$ rsync -rcnv a/* b/

-r will recurse into the directories
-c will compare based on file checksum
-n will run it as a "dry run" and make no changes, but just print out the files 
   that would be updated
-v will print the output to stdout verbosely

এটি একটি ভাল বিকল্প কারণ আপনি ফাইলগুলির বিষয়বস্তুগুলির সাথে মেলে কিনা তা নিশ্চিত করতে তুলনা করতে পারেন। rsyncএই ধরনের ব্যবহারের ক্ষেত্রে ডেল্টার অ্যালগরিদম অনুকূলিত ized তারপরে আপনি যদি bসামগ্রীর সামগ্রীর সাথে মিল তৈরি করতে চান তবে আপনি আসল সিঙ্কটি সম্পাদন করার বিকল্পটি aসরাতে পারেন -n

সম্পর্কিত কিছু প্রশ্ন:


1
আরএসইএনসি হ'ল অবশ্যই এই কাজের জন্য হাতিয়ার, তবে এটি তুলনামূলকভাবে এবং আলাদা আলাদাভাবে অনুলিপি করে না se এটি আকার এবং হ্যাশ ব্যবহার করে ফাইলগুলি তুলনা করে।
জাস্টিন ফোর্স

@ জাস্টিনফোরস? অবশ্যই, বিভিন্ন আকার নিশ্চিত করে যে ফাইলটি ঠিক এক নয়, তবে rsync খুব বহুমুখী, এটি সমস্ত ফাইল পুনরায় পড়া এড়ানোর জন্য বৈকল্পিকভাবে মেটাডেটা (সময়ের মতো) বিশ্বাস করতে পারে। নেটওয়ার্কের মাধ্যমে অনুলিপি করার সময়, এটি রোলিং হ্যাশগুলি সাধারণ অংশগুলি স্থানান্তর এড়ানোর জন্য সূক্ষ্মভাবে সনাক্ত করতে গণনা করে তবে স্থানীয় ড্রাইভে ডিফল্টভাবে হ্যাশগুলি এই ভূমিকা পালন করে না (যদি ব্যবহার করা হয় তবে)। এমনকি আপনি এটি বিশ্বাস করতেও বলতে পারেন যে একটি সংক্ষিপ্ত গন্তব্যটিতে ইতিমধ্যে সঠিক সামগ্রী রয়েছে এবং কেবল সংযুক্তি প্রয়োজন, যদিও আসুন বিষয়টিতে থাকি।
স্টাফেন গৌরিচন

8

জিইউআই অ্যাপস যদি ফাইল এবং ডিরেক্টরি তুলনা সরঞ্জামে পরামর্শ দেয়? এটি আপনার জন্য করবেন না, diff -rq /path/to/one /path/to/otherদুটি ডিরেক্টরিতে চুপচাপ পুনরাবৃত্তি করার চেষ্টা করুন , কেবলমাত্র স্ক্রিনে পার্থক্য লগইন করুন।


3

আপনি যে পরিস্থিতি বলছেন তা খুব জটিল। আপনি অনুলিপি করতে চান এমন সমস্ত ফাইলের MD5 গণনা করতে কোনও স্ক্রিপ্ট লিখতে পারেন এবং পরে অনুলিপি করা ফাইলগুলির সাথে সেগুলি তুলনা করে:

আপনি যদি কিছু সহজ এবং দ্রুত চান (এটি খুব জটিল পরিস্থিতিতে কাজ করবে না) আপনি মেল্ড ব্যবহার করতে পারেন

sudo apt-get install meld

0

"যদি সবকিছু সঠিকভাবে অনুলিপি করা হয়েছে" তে, আমি একটি পরিবর্তিত সিপি ব্যবহার করি (বা এমভি) যা চেকসামিং অন্তর্ভুক্ত করে (allyচ্ছিকভাবে xattr এ সঞ্চিত থাকে, সুতরাং এটি কেবল উত্সের জন্য একবার গণনা করতে হবে) http://sourceforge.net/projects / crcsum /


1
যদিও আপনার উত্তরটি 100% সঠিক, তবুও এটি ব্যবহারকারীর পক্ষে বাস্তবায়ন প্রায় অসম্ভব। সুতরাং, দয়া করে আপনার উত্তরটি সম্পাদনা করুন এবং আপনার উত্তরটিতে কীভাবে ডাউনলোড, সংকলন, ইনস্টল এবং আনইনস্টল করবেন সে সম্পর্কে পদক্ষেপগুলি অন্তর্ভুক্ত করুন crccp! ;-) আপনি নিজের উপাদানের উত্স হিসাবে আপনার উত্তরের নীচে লিঙ্কটি সর্বদা রেখে যেতে পারেন ...
ফ্যাবি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.