কম্প্রেশন ছাড়াই কীভাবে একটি বড় ফোল্ডার সংরক্ষণ করতে হয়


11

আমি একটি g 78 জিবি ফোল্ডারটি নিতে এবং এটি একটি একক ফাইলে (ক্লাউড পরিষেবাতে আপলোড করার জন্য) সংরক্ষণ করতে চাই, যেন আমি এটি কোনও সংরক্ষণাগারে সংকোচিত করছি তবে আমি কোনও সংক্ষেপণ চাই না (আমার কাছে এতগুলি সিপিইউ নেই সময় উপলব্ধ)। যেভাবেই আমি এটি সম্পাদন করতে পারি, সম্ভবত একটি টার্মিনাল কমান্ড যার সম্পর্কে আমি জানি না?


1
tarলিনাক্স এ কমান্ড আছে। tar -cf long.file.tar folder
কস্টাস

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

উত্তর:


20

ব্যবহার tar: tar -cf my_big_folder.tar /my/big/folder

সংরক্ষণাগারটি দিয়ে পুনরুদ্ধার করুন tar -xf my_big_folder.tar -C /

-C আপনার সংরক্ষণাগারটি পুনরুদ্ধার করতে রুট ডিরেক্টরিতে পরিবর্তিত হবে কারণ উপরের তৈরি সংরক্ষণাগারটিতে পরম পাথ রয়েছে।

সম্পাদনা : সংরক্ষণাগারের তুলনামূলকভাবে বড় আকারের কারণে, এসএসএইচ বা ক্লাউড রিসোর্স / ফোল্ডারের কোনও মাউন্ট পয়েন্ট ব্যবহার করে এটি [সরাসরি] এর চূড়ান্ত স্থানে প্রেরণ করা ভাল হবে be উদাহরণস্বরূপ, কোল জনসন যেমন পরামর্শ দিয়েছেন :

tar -cf /network/mount/point/my_big_folder.tar /my/big/folder

অথবা

tar -c /my/big/folder | ssh example.com "cat > my_big_folder.tar"

সম্পাদনা : ব্ল্যাকলাইট শাইনিংয়ের পরামর্শ অনুসারে , আপনি যদি নিখুঁত পাথগুলি এড়াতে চান তবে আপনি বড় ফোল্ডারের পিতামাতায় এবং tarসেখান থেকে পরিবর্তন করতে পারেন :

tar -cf /network/mount/point/my_big_folder.tar \
    -C /my/big/folder/location the_big_folder

অথবা

tar -cC /my/big/folder/location the_big_folder | \
ssh example.com "cat > my_big_folder.tar"

ব্যক্তিগত প্রতিচ্ছবি

আপেক্ষিক বা নিখুঁত পাথগুলি অন্তর্ভুক্ত করা উচিত কিনা তা ব্যক্তিগত পছন্দের বিষয়।

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

অবশেষে - পেডেন্টিক এখানে যাওয়া - tarসংরক্ষণাগার সদস্যরা সর্বদা তুলনামূলক যেহেতু ক) তারা কোনও ডিরেক্টরিতে পুনঃস্থাপন করতে পারে এবং খ) একটি সংরক্ষণাগার তৈরি tarকরার সময় নেতৃস্থানীয়টিকে সরিয়ে দেয় /। সংরক্ষণাগারটি আনপ্যাক করার সময় আমি ব্যক্তিগতভাবে সর্বদা -C ব্যবহারের প্রবণতা রাখি ।


সম্পাদনাটি স্পষ্ট করতে: tar -cf /network/mount/point/folder.tar /folderস্থানীয় কম্পিউটারে ট্যারিংয়ের পরিবর্তে করুন এবং তারপরে আপনি যদি আপলোড করতে পারেন তবে
কোল জনসন

সঠিক। আমি আমার সম্পাদনাটি যত বেশি পড়ি, ততই আমি মনে করি এটি বিভ্রান্ত দেখাচ্ছে। আপনার অন্তর্দৃষ্টি জন্য ধন্যবাদ।

1
এটা তোলে পথে এর মূল্য এড়াতে পরম পাথ সঙ্গে সংরক্ষণাগার উপার্জন: tar -cf $archive.tar -C $source_dir .। গন্তব্য মেশিন সোর্স ডিরেক্টরিতে হিসাবে একই পাথ দিয়ে ডিরেক্টরির নেই, তাহলে আপনি পাবেন প্রয়োজন যে কাজ করতে। -Cআপনি যখন এক্সট্রাক্ট করবেন তখন কেবল কোনও নতুন ডিরেক্টরিতে প্রবেশের বিষয়টি নিশ্চিত করুন mkdir $destination_dir && tar -xf $archive.tar -C $destination_dir; অন্য সংরক্ষণাগার বিষয়বস্তু যাই হোক না কেন ডিরেক্টরি আপনাকে হতে ঘটতে মধ্যে ডাম্প করা হবে।
Blacklight শাইনিং

2

বিকল্প: সিপিও

(cd /my/big/folder && find . -depth -print0 | cpio -0o > myfolder.cpio)

বর্তমান ডিরেক্টরিতে প্যাক করা হচ্ছে:

cpio -id < myfolder.cpio

আদেশ সহকারে:

  • find /my/big/folderপরিবর্তে যদি ব্যবহার করা হয় cd, সংরক্ষণাগারে পুরো পাথ থাকবে এবং নিষ্কাশন তাদের অনুসরণ করার চেষ্টা করবে;
  • বড় ফাইল (> 2 জিবি) সমস্যা হতে পারে;

Cpio, আলকাতরা তুলনায় অনেক ধীর হতে থাকে যদিও যদি 512. (ডিফল্ট blocksize সঙ্গে ব্যবহার fixunix.com/sco/89900-cpio-performance-vs-tar-bit-mystery.html )
PSkocik
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.