দূষিত "tar.gz" ফাইলটি কীভাবে পুনরুদ্ধার করবেন


11

আমার হঠাৎ একটি পুরানো tar.gzফাইলটি পুনরুদ্ধার করা দরকার , তবে যতক্ষণ না আমি এটি সম্পাদন করি:

tar -zxvf filename.tar.gz

বুঝতে পেরেছি:

gzip: stdin: invalid compressed data--format violated  
tar: Child returned status 1  
tar: Error is not recoverable: exiting now

8
আসলেই কি এটি একটি গিজিপ করা টারবাল? প্রথমে fileকমান্ড চেষ্টা করুন ।
অ্যালেক্স

1
হ্যাঁ, আমার সাথে এটি একাধিকবার ঘটেছে যা আমি পেয়েছিলাম .tar.gzযা সত্যিই ছিল .tarএবং একবারে একটি পিডিএফও।
ভোনব্র্যান্ড

উত্তর:


12

আপনার যা চেষ্টা করা উচিত তা হ'ল:

  1. fileসংরক্ষণাগারে কমান্ডটি ব্যবহার করুন এটি gzip-রূপে ডেটা হিসাবে স্বীকৃত কিনা তা দেখুন ।
  2. strace gunzipফাইল চালান । এটি ফাইল থেকে পড়া শেষ বাইটগুলি মুদ্রণ করবে যা আপনাকে ফাইলের পয়েন্ট চিহ্নিত করতে সহায়তা করতে পারে যেখানে দুর্নীতি ঘটে।
  3. gunzipআন্ডার এর একটি ডিবাগ বিল্ড চালান gdb। দূষিত বিভাগটি সংশোধন করার চেষ্টা করুন (এটি করতে সক্ষম হওয়ার জন্য আপনাকে অতিরিক্ত ভাগ্যবান হতে হবে) এবং দেখুন এটি ফাইলটির শেষ অবধি চালিয়ে যেতে পারে কিনা।

দুর্নীতির প্রকৃতির উপর নির্ভর করে আপনি আপনার ডেটা পুনরুদ্ধার করতে পারেন বা নাও করতে পারেন।


gunzip filename.tar.gzআমার জন্য কাজ।
রবি ধোরিয়া ツ

3

ক্ষতিগ্রস্থ .gz ফাইলটি পুনরুদ্ধারে কীভাবে পুনরুদ্ধার কাজ করে সে সম্পর্কে কিছু তথ্য পাওয়া যাবে ।

এমন একটি সরঞ্জাম রয়েছে যা আপনাকে এটি করতে সহায়তা করে: জিজিপ রিকভারি টুলকিট ওরফে গজারকভার


2

সম্পূর্ণ পুনরুদ্ধার সম্ভব নয়। .Zip এর মতো ফর্ম্যাটগুলি আরও ভাল সুরক্ষা এবং পুনরুদ্ধারের বিকল্প সরবরাহ করে তবে তা পূর্ণ নয়।

.tar.gz সমস্ত ফাইল একসাথে লম্পট করে এবং তারপরে একটি সংক্ষেপণ প্রয়োগ করে। .zip প্রতিটি ফাইলের জন্য সংক্ষেপণ পুনরায় আরম্ভ করে। সুতরাং .zip ফাইলে সংকুচিত ব্লকে করা ক্ষতি কেবল সেই ফাইলটিকেই প্রভাবিত করে যা এই ব্লকের অন্তর্ভুক্ত। .Tar.gz- এ সংকোচনটি কোনওভাবে পুনরায় শুরু না হওয়া পর্যন্ত ক্ষতি পরবর্তী সমস্ত ফাইলগুলিকে প্রভাবিত করবে।


আমি ভাবছিলাম যে, ভাল ব্যাখ্যা THX! আমি ভাবছি জিপের মতো আরও ভাল ফর্ম্যাটগুলি রয়েছে (তবে আরও ভাল সংকোচনের সাথে) তবে জিপ সর্বদা সর্বত্র স্বীকৃত এবং সম্ভবত পুনরুদ্ধারের বিষয়ে সর্বোত্তম বিকল্প।
অ্যাকোরিয়াস পাওয়ার

1

চালান zcat bad.tar.gz > some.tar, এবং এটি নিষ্কাশন। ফাইলের দূষিত অংশ গত যাওয়া হবে চতুর হতে। ম্যান পৃষ্ঠাটি বিন্যাসে পয়েন্টার দেয়, তবে আমি গুগলে অন্যান্য বিকল্পগুলি সন্ধান করব।

আপনি কি নিশ্চিত যে এটি জিপিপ দিয়ে সংকুচিত হয়েছে? এটি অভিযোগ করা হতে পারে কারণ এটি ফর্ম্যাটটি বোঝে না ...


1

সমস্ত পুনরুদ্ধার কেবল ত্রুটি দেখা দিয়েছে যেখানে বা ফাইলটি কাটা হয়েছে যেখানে ফাইল শুরু থেকে তথ্য আহরণের জন্য প্রযোজ্য।

দুর্ভাগ্যক্রমে কোনও প্রাপক দুর্নীতির ক্ষেত্রের পরে কীভাবে ফাইল / স্ট্রিমের অংশ পুনরুদ্ধার করবেন তা বর্ণনা করে না। কেউ কি রিসিপি আছে?


-1

এটি ব্যবহার করুন: https://github.com/arenn/gzrt

gzrecover foo.tar.gz
cpio -F foo.tar.recovered -i -v

আপনার আদেশটি একটি cpio: illegal option -- Fত্রুটি বার্তায় ফলাফল দেয় ।
খুব ভাল

1
সিপিও - সহায়তা আপনাকে বিকল্প দেয়: -এফ, - ফাইল - [[ব্যবহারকারী @] হোস্ট:] ফাইল-NAME স্ট্যান্ডার্ড ইনপুট বা আউটপুট পরিবর্তে এই ফাইল-NAME ব্যবহার করুন। Remote
চ্ছিক

আপনি abpout বলছি না cpio, কিন্তু বিক্রেতা নির্দিষ্ট বিকল্প সহ একটি ক্লোন সম্পর্কে যেমন দেখতে schillix.sourceforge.net/man/man1/cpio.1.html তবে ypou মূল পরিবর্তে একটি ক্লোন সম্পর্কে কথা বলতে থাকে, তাহলে আপনি যা আপনি ক্লোন উল্লেখ করা উচিত ব্যবহার করছেন.
স্কিলি

1
@ শিকল, আমি ডিবিয়ান cpioঅন্তর্ভুক্ত করার কথা বলছি । জিএনইউ
সিপিও
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.