একক ফাইলে ত্রুটি সংশোধন কোড (বিসিএইচ, আরএস বা ইত্যাদি) যুক্ত করা কি সম্ভব?


12

যতদূর আমি জানি, উইনআরআরআর্কাইভসে ইসিসি (ত্রুটি সংশোধন কোড) থাকতে পারে, সুতরাং সংরক্ষণাগারটি যদি সামান্য ক্ষতিগ্রস্থ হয় তবে তা নিজেই ঠিক করা যায়।

উদাহরণস্বরূপ, আমি প্রথমে এনকোড archives.tarকরতে পারি archives.tar.eccএবং তারপরে এটি আমার সার্ভারে আপলোড করতে পারি। ক্লায়েন্টের দ্বারা ডাউনলোড করার পরে যদি ফাইলটি কিছুটা ক্ষতিগ্রস্ত হয় তবে ডিকোডিং করে আবার ফাইলটি ডাউনলোড না করে এটি স্বয়ংক্রিয়ভাবে ঠিক করা যায় archives.tar.ecc। আমি মনে করি যদি নেটওয়ার্ক সংযোগটি অস্থির হয় তবে এটি দুর্দান্ত ধারণা হবে।

আমি আশ্চর্য হয়েছি যে লিনাক্সে এমন কোনও (ওপেন সোর্সযুক্ত) সফটওয়্যার রয়েছে যা আমার চাহিদা মেটাতে পারে?

কোন পরামর্শ?


কিছুটা ডিগ্রীতে, এটি ইতিমধ্যে ঘটে - প্রতিটি ফাইলের শিরোনাম chksum ফিল্ডটি সেই শিরোনামের উপাদান বাইটগুলির যোগফল - আকার ক্ষেত্র অন্তর্ভুক্ত করে। অনেকগুলি tarআরও এগিয়ে যান - জিএনইউ tarশিরোনাম মেটাডেটাতে স্পার ফাইল ফাইলের গর্তগুলি এনকোড করে এবং কোনও পসিক্স paxসামঞ্জস্যপূর্ণ তীরচিহ্ন দ্বারা এক্সট্রাকশন করার পরে ফাইলটি পুনর্নির্মাণের জন্য প্রয়োজনীয় তথ্য সম্বলিত ফাইল উত্পন্ন করে, বা জিএনইউ দ্বারা tarমূল স্পার্স ফাইলটিতে। এটি ইউটিলিটি ডাব্লু / এর জন্য পসিক্স দ্বারাpax নির্দিষ্ট হিসাবে প্রাথমিকভাবে এনকোডড শিরোনাম ভেরিয়েবলগুলি ব্যবহারযোগ্য-o
মাইকজার্ভ

উত্তর:


6

আমার এই একই সমস্যা ছিল এবং আমি দেখতে পেয়েছি যে অন্যান্য উত্তরে প্রদত্ত সমাধানগুলি গ্রহণযোগ্য নয় কারণ পার 2 প্রোগ্রাম / স্ট্যান্ডার্ডটিতে পুনরুদ্ধার এবং যাচাই করার জন্য পৃথক ফাইল তৈরি করা জড়িত। আমি মনে করি মূল জিজ্ঞাসকের মতো কোডগুলি সংশোধন করতে ত্রুটিযুক্ত একটি ফাইল চাই।

আমি প্রোগ্রামটিআরএসবেপটি পেয়েছি যা প্যাকেজ ম্যানেজারে ব্যবহৃত হত এবং তারপরে প্রয়োজনীয় কোডটি এখানে পেয়েছি: https://www.thanassis.space/rsbep.html

এটি একটিকে রিড-সলোমন ত্রুটিযুক্ত কোডগুলি সংশোধন করে একটি ফাইল তৈরি করতে এবং তারপরে সম্ভবত দুর্নীতিগ্রস্থ, ইসিসি সংস্করণ থেকে মূল ফাইলটি পুনরুদ্ধার করতে দেয়।


আরএসবিপ দুর্দান্ত! তবে এটি কিছুটা পৃথক: এটি সম্পূর্ণ হিমায়িত ওএস, যাতে আপনি ভিতরে ফাইল যুক্ত করতে পারেন তবে ভিতরে কী রয়েছে তা আপনি সংশোধন করতে পারবেন না এবং এদিক ওদিক ঘোরাতে এটি আরও কিছুটা জটিল। তবে এটি FUSE এবং ওপেনসোর্স ব্যবহার করে একটি সত্যই আকর্ষণীয় পদ্ধতির।
চমত্কার

1
@ উদাসীন, এটি সত্য নয়। rsbepস্বচ্ছভাবে ব্যবহার করে এখানে FUSE fs বাস্তবায়ন রয়েছে , তবে এটি কেবল স্ক্রিপ্টগুলির উপরে যা ফাইল-ফাইল-ফাইল ভিত্তিতে কাজ করে।
nyov

6

আপনি PAR2- তে আগ্রহী, যা রিড-সলোমন ত্রুটি সংশোধন ব্যবহার করে। parchive , ইসিসি ফাইল ফরম্যাট স্পেসিফিকেশন হয় লিনাক্সের জন্য আপনি চান PyPar বা par2tbb , এবং Windows এ একটি GUI নামক ব্যবহার QuickPar


1
পাইপার এবং par2tbb এর লিঙ্কগুলি আমার কাছে ভাঙা দেখাচ্ছে। আমি par2tbb পাওয়া এখানে
Drist

2
আমি মনে করি পাইপার সম্পূর্ণরূপে ত্রুটি সংশোধনের সাথে সম্পর্কিত নয়।
এমবারখাউ

2

আপনি যদি সংরক্ষণাগার থেকে ইসিসি ফাইলটি পৃথক রাখতে চান তবে আপনি পাইফাইলফিক্স্টি ব্যবহার করতে পারেন , একটি ওপেনসোর্স পাইথন প্রকল্প যা বিট দুর্নীতির বিরুদ্ধে পরবর্তী জেনার পিএআর-এর মতো সুরক্ষা ব্যবস্থা সরবরাহ করবে to

আপনি যদি ইসি সুরক্ষা সরাসরি সংরক্ষণাগারে অন্তর্ভুক্ত করতে চান তবে আপনি ওপেনসোর্স ডিএআর ব্যবহার করতে পারেন, একধরনের নেক্সট-জেন টিআর, যা অ-সলিড উভয়ই উত্পন্ন করতে দেয় (যেমন, দুর্নীতিগ্রস্থ সংরক্ষণাগারগুলির আংশিক নিষ্কাশনকে অনুমতি দেয়) এবং ইসি ( PAR2 ব্যবহার করে এবং ক্যাটালগ বিচ্ছিন্নতা (যেমন, ডিরেক্টরি ট্রি এবং ফাইল সিস্টেম মেটা-ডেটার একটি ব্যাকআপ সংরক্ষণ করুন) সরাসরি .ar আর্কাইভগুলিতে।


0

অনুরূপ আরেকটি 2018 প্রকল্প হ'ল রেডাপ যা দুটি পৃথক সরঞ্জামে পৃথক এবং এম্বেডযুক্ত উভয় ফাইল ত্রুটি সংশোধন সরবরাহ করে বলে মনে হচ্ছে:

প্রথম সরঞ্জাম, রেডুপ, gzip বা bzip2 এর মতো সংকোচনের সরঞ্জামগুলির পরে মডেল করা হয়েছে, তবে এটি অপসারণের পরিবর্তে অতিরিক্ত বাড়াবাড়ি যুক্ত করে।

ওয়েবপৃষ্ঠায় উদাহরণটি (ব্রেভিটির জন্য পরিবর্তিত) আপনার ব্যবহারের ক্ষেত্রে অনুরূপ দেখাচ্ছে:

$ redupe home-backup.tar.gz
$ ls -l
-rw------- 1 rescrv 5625162218 home-backup.tar.gz
-rw-r--r-- 1 rescrv 6433996800 home-backup.tar.gz.rd

reundupe তারপরে ফাইলটি পুনরুদ্ধার করতে এবং ছোট ছোট ত্রুটিগুলি সংশোধন করার জন্য ব্যবহার করা যেতে পারে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.