সংরক্ষণাগারে সংরক্ষিত একটি ফাইল দক্ষতার সাথে পুনরুদ্ধার করার জন্য সেখানে কি আরও স্মার্ট টার বা সিপিও আছে?


24

আমি tarখুব বড় (বহু-জিবি) bz2ফাইলের একটি দল সংরক্ষণাগার ব্যবহার করছি ।

আমি যদি tar -tf file.tarসংরক্ষণাগারটির মধ্যে ফাইলগুলি তালিকাবদ্ধ করতে ব্যবহার করি তবে এটি সম্পূর্ণ করতে খুব দীর্ঘ সময় লাগে (10-15 মিনিট)।

তেমনি, cpio -t < file.cpioসম্পূর্ণ হতে ঠিক সময় লাগে, প্লাস বা বিয়োগ কয়েক সেকেন্ড।

তদনুসারে, একটি সংরক্ষণাগার থেকে একটি ফাইল পুনরুদ্ধার ( tar -xf file.tar myFileOfInterest.bz2উদাহরণস্বরূপ) যতটা ধীর।

আর্কাইভের সাথে সহজেই উপলব্ধ "ক্যাটালগ" রাখে এমন কোনও আর্কাইভ পদ্ধতি আছে, যাতে আর্কাইভের মধ্যে একটি পৃথক ফাইল দ্রুত পুনরুদ্ধার করা যায়?

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

সেখানে একটি টুল (বা যুক্তি tarবা cpio) যে সংরক্ষণাগার মধ্যে একটি ফাইলের দক্ষ আহরণ পারবেন?

উত্তর:


15

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

এটি আপনার বিদ্যমান টার বা সিপিও সংরক্ষণাগারগুলিতে সহায়তা করবে না, তবে আরও একটি সরঞ্জাম রয়েছে, ডার ("ডিস্ক সংরক্ষণাগার"), এটি সংরক্ষণাগার ফাইল তৈরি করে যা এই জাতীয় সূচক ধারণ করে এবং সংরক্ষণাগারটির মধ্যে আপনাকে পৃথক ফাইলগুলিতে দ্রুত সরাসরি অ্যাক্সেস দিতে পারে ।

যদি ডারটি আপনার ইউনিক্স / লিনাক্স-ডিস্টের সাথে অন্তর্ভুক্ত না থাকে তবে আপনি এটি এখানে খুঁজে পেতে পারেন:

http://dar.linux.free.fr/


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

1
না, জানি না আমি আসলে ডার নিজেই ব্যবহার করি না ... আমি কেবল জানি যে এটি বিদ্যমান। আমি টারের সাথে যথেষ্ট খুশি এবং আমি কেবল বড় ট্যর ফাইলগুলির বিষয়বস্তু তালিকাবদ্ধ করে পাঠ্য ফাইল তৈরি করতে ঝোঁক যা আমি পরে অনুসন্ধান করতে চাই। আপনি দুটি বার ভি বিকল্প ব্যবহার করে ট্যুর সংরক্ষণাগার তৈরির জন্য একই সময়ে এটি করতে পারেন (উদাঃ "টার সিভিভিজেফ /tmp/foo.tar.bz2 / পথ / থেকে / ব্যাকআপ> /tmp/foo.txt")
কাস

10

আপনি এই জাতীয় সংরক্ষণাগারগুলির জন্য স্কোয়াশএফএস ব্যবহার করতে পারেন। এটাই

  • ফিউজ ড্রাইভার ব্যবহার করে অ্যাক্সেস করার জন্য ডিজাইন করা হয়েছে (যদিও একটি traditionalতিহ্যগত ইন্টারফেস রয়েছে)
  • সঙ্কুচিত (ব্লকের আকার যত বেশি, তত বেশি দক্ষ)
  • লিনাক্স কার্নেলের অন্তর্ভুক্ত
  • ইউআইডি / জিআইডি এবং তৈরির সময় সঞ্চয় করে
  • অন্তর্নিহিত-সচেতন, তাই যথেষ্ট পোর্টেবল

আমি জানি যে একমাত্র ত্রুটি এটি কেবল পঠনযোগ্য।

http://squashfs.sourceforge.net/ http://www.tldp.org/HOWTO/SquashFS-HOWTO/ কিস.ইচটিএমএল


8

যদিও এটি কোনও সূচক সঞ্চয় করে না, starতার চেয়ে দ্রুত গতিযুক্ত tar। এছাড়াও এটি দীর্ঘ ফাইলের নাম সমর্থন করে এবং ফাইল বৈশিষ্ট্যের জন্য আরও ভাল সমর্থন করে।

যেহেতু আমি নিশ্চিত যে আপনি সচেতন, ফাইলটি সংক্ষেপণ করতে সময় লাগে এবং সূচি থাকলেও নিষ্কাশনের গতির একটি কারণ হতে পারে।

সম্পাদনা: আপনিও একবার দেখে নিতে পারেন xar। এটিতে একটি এক্সএমএল শিরোনাম রয়েছে যাতে সংরক্ষণাগারের ফাইলগুলির তথ্য থাকে।

রেফারেন্স করা পৃষ্ঠা থেকে:

জারের এক্সএমএল শিরোনাম এটি সংরক্ষণাগারের মধ্যে থাকা ফাইলগুলি সম্পর্কে স্বেচ্ছাসেবী মেটাডেটা ধারণ করতে দেয়। স্ট্যান্ডার্ড ইউনিক্স ফাইলের মেটাডেটা যেমন ফাইলের আকার এবং এটির সংশোধন ও তৈরির সময়, এক্সার এক্সপুফস এবং এইচএফএস ফাইল বিট, ইউনিক্স পতাকা, বর্ধিত বৈশিষ্ট্যের উল্লেখ, ম্যাক ওএস এক্স ফাইন্ডারের তথ্য, ম্যাক ওএসের মতো তথ্য সংরক্ষণ করতে পারে এক্স রিসোর্স কাঁটাচামচ, এবং ফাইল ডেটার হ্যাশগুলি।


আমাকে এমন দরকারী সাউন্ডিং সরঞ্জাম সম্পর্কে সতর্ক করার জন্য আমি এর আগে কখনও শুনিনি।
সি এ এস

লিঙ্কটি starবন্ধ রয়েছে ......
পেসারিয়ার 3'15

5

থরবজর্ন রাভন অ্যান্ডার্সার ঠিক বলেছেন। GNU টার ডিফল্টরূপে "সন্ধানযোগ্য" সংরক্ষণাগার তৈরি করে। -এন বিকল্পটি না দেওয়া থাকলে এই সংরক্ষণাগারগুলি পড়লে এটি তথ্য ব্যবহার করে না। -N বিকল্পের সাহায্যে আমি GB গিগাবাইট পড়তে / লেখার জন্য প্রয়োজনীয় সময়ে 300 গিগাবাইট সংরক্ষণাগার থেকে 7 গিগাবাইট ফাইলটি বের করেছি। -N ছাড়া এটি ঘন্টা খানেকের বেশি সময় নিয়েছিল এবং কোনও ফল দেয়নি।

আমি নিশ্চিত নই যে সংক্ষেপণ এটি কীভাবে প্রভাবিত করে। আমার সংরক্ষণাগারটি সংকুচিত হয়নি। সংক্ষিপ্ত সংরক্ষণাগারগুলি "সন্ধানযোগ্য" নয় কারণ বর্তমান (1.26) জিএনইউ টার বহির্মুখী প্রোগ্রামে সংক্ষেপণ অফলোড করে।


আলকাতরা man পৃষ্ঠা অনুযায়ী man7.org/linux/man-pages/man1/tar.1.html , গনুহ আলকাতরা ডিফল্ট ব্যবহার করুন seekable বিন্যাস যখন লিখে, এবং যদি সংরক্ষণাগার seekable, এটা যখন (জন্য পড়া ব্যবহার করা হবে হবে তালিকা বা নিষ্কাশন)। আপনি যদি জিএনইউ টার ব্যবহার করছেন এবং এখনও সমস্যাটি দেখতে পান তবে আপনার জিএনইউতে একটি বাগ রিপোর্ট ফাইল করা উচিত।
ব্রায়ান মিন্টন

7
আমি যদি ম্যানুয়ালটি সঠিকভাবে পড়ে থাকি তবে এটি কখনই বলে না যে এর কোনও ধরণের সূচি রয়েছে এবং ফাইলটির নাম দিয়ে সংরক্ষণাগারটির মধ্যে যে কোনও ফাইলের মধ্যে ঝাঁপিয়ে পড়তে পারে। - সেকের অর্থ হ'ল অন্তর্নিহিত মিডিয়াগুলি সন্ধানযোগ্য, যাতে এটি শুরু থেকে পড়লে ফাইলের বিষয়বস্তু পড়া যায় না, তবে এটি শুরু থেকে এন্ট্রি শিরোনামগুলি পড়তে হবে। এটি বলেছিল, যদি আপনার 1M ফাইল সহ একটি সংরক্ষণাগার থাকে এবং আপনি সর্বনাশটি - কোন অনুসন্ধানের সাথে সরিয়ে নেওয়ার চেষ্টা করেন তবে আপনাকে সমস্ত ফাইলের বিষয়বস্তু পড়তে হবে; - সেক সহ, আপনার কেবলমাত্র 1 এম শিরোলেখ পড়তে হবে, প্রতিটি ফাইলের জন্য একটি, তবে এটি এখনও ধীর গতির।
আইকান্দো

4

আমি জানি যে সংরক্ষণাগারগুলির একমাত্র সংরক্ষণাগারটি হ'ল একটি সূচক জিপ, কারণ আমাকে একাধিকবার দূষিত সূচীগুলি পুনর্গঠন করতে হয়েছিল।


2

এটি আমার পরিচিতিটি সূচক করে না, তবে আমি বড় ফাইলগুলির সাথে ডাম্প ও পুনরুদ্ধার ব্যবহার করি এবং এলোমেলো ফাইলগুলি নির্বাচন করতে ইন্টারেক্টিভ মোডে পুনরুদ্ধার ট্রিটি নেভিগেট করা খুব দ্রুত।


2

আপনার যদি p7zip-fullপ্যাকেজে অ্যাক্সেস থাকে তবে আপনি 7z (7zip) সংরক্ষণাগার / সংকোচনের বিন্যাসটি ব্যবহার করতে পারেন ।

উবুন্টুতে আপনি এটি ইনস্টল করতে এই আদেশটি ব্যবহার করতে পারেন:

$ sudo apt-get install p7zip-full

একটি সংরক্ষণাগার তৈরি করতে আপনি ব্যবহার করতে পারেন 7z a <archive_name> <file_or_directory>এবং আপনি যদি ফাইলগুলি সংকুচিত করতে না চান এবং সেগুলি যেমন ঠিক তেমন "সঞ্চয়" করতে চান তবে আপনি এই -mx0বিকল্পটি ব্যবহার করতে পারেন :

$ 7z a -mx0 myarchive.7z myfile.txt

Creating archive myarchive.7z

তারপরে আপনি ফাইলগুলি ব্যবহার করে এটি ব্যবহার করতে পারেন 7z e:

$ 7z e myarchive.7z

Processing archive: myarchive.7z
Extracting  myfile.txt

অথবা আপনি সংরক্ষণাগারটির সূচকটি তালিকাভুক্ত করতে পারেন 7z lযা দিয়ে অনুসন্ধানের জন্য কার্যকর grep:

$ 7z l myarchive.7z | grep

2014-07-08 12:13:39 ....A            0            0  myfile.txt

tসততা পরীক্ষা uকরার জন্য, সংরক্ষণাগারে কোনও ফাইল যুক্ত / আপডেট করতে এবং dকোনও ফাইল মুছতে এই বিকল্পও ।

গুরুত্বপূর্ণ দ্রষ্টব্য লিনাক্স ফাইল সিস্টেম ব্যাকআপের জন্য 7zip ফর্ম্যাটটি ব্যবহার
করবেন না কারণ এতে থাকা ফাইলগুলির মালিক এবং গোষ্ঠী সংরক্ষণ করে না।


লিনাক্সের জন্য এটি একটি টার ফাইল 7zip করা ভাল fine
থরবজর্ন রাভন অ্যান্ডারসন

1

আমি বিশ্বাস করি জিএনইউ টার আপনি যা চান তা করতে সক্ষম, তবে আমি এটির কোনও নির্দিষ্ট সংস্থান খুঁজে পাচ্ছি না।

যে কোনও ক্ষেত্রে আপনার সূচী সহ একটি সংরক্ষণাগার বিন্যাসের প্রয়োজন (যেহেতু এটি আপনাকে যা করতে চাইবে তা করতে দেয়)। দুর্ভাগ্যক্রমে আমি জিপ-ফাইলগুলি বড় হতে পারি না ive


জিপ ফাইলগুলি বড় হতে পারে ।
পেসারিয়ার

1
আমি যদি ম্যানুয়ালটি সঠিকভাবে পড়ে থাকি তবে এটি কখনই বলে না যে এর কোনও ধরণের সূচি রয়েছে এবং ফাইলটির নাম দিয়ে সংরক্ষণাগারটির মধ্যে যে কোনও ফাইলের মধ্যে ঝাঁপিয়ে পড়তে পারে। - সেকের অর্থ হ'ল অন্তর্নিহিত মিডিয়াগুলি সন্ধানযোগ্য, যাতে এটি শুরু থেকে পড়লে ফাইলের বিষয়বস্তু পড়া যায় না, তবে এটি শুরু থেকে এন্ট্রি শিরোনামগুলি পড়তে হবে। এটি বলেছিল, যদি আপনার 1M ফাইল সহ একটি সংরক্ষণাগার থাকে এবং আপনি সর্বনাশটি - কোন অনুসন্ধানের সাথে সরিয়ে নেওয়ার চেষ্টা করেন তবে আপনাকে সমস্ত ফাইলের বিষয়বস্তু পড়তে হবে; - সেক সহ, আপনার কেবলমাত্র 1 এম শিরোলেখ পড়তে হবে, প্রতিটি ফাইলের জন্য একটি, তবে এটি এখনও ধীর গতির।
আইকান্দো

2
@ পেসারিয়র আমার বোঝার জন্য জিপ format64 ফর্ম্যাটটি খুব বড় ফাইলগুলির জন্য অনুমতি দেয় তবে মূল জিপ ফর্ম্যাটটি তা করে না।
থরবজর্ন রাভন অ্যান্ডারসন

@ থরবজর্নআরভানএন্ডারসেন, একটি সিঙ্গল 4 জিবি ফাইল বড় ছেলে।
পেসারিয়ার

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