বিএসডিটার এবং জিএনইউ টারের মধ্যে পার্থক্য কী?


46

আমি সবসময় জিএনইউ ব্যবহার করেছি tar। যাইহোক, সমস্ত জিএনইউ / লিনাক্স বিতরণগুলি যা আমি bsdtarতাদের সংগ্রহস্থলে শিপ করেছি । এমনকি কিছু কিছুতে এটি ডিফল্টরূপে ইনস্টল করে দেখেছি, আইআইআরসি। আমি নিশ্চিত জানি যে আর্ক জিএনইউ / লিনাক্সের এটির একটি অংশ হিসাবে এটি প্রয়োজন basedevel(সম্ভবত base, তবে আমি নিশ্চিত নই), যেমনটি আমি পিকেজিইউআইএলডি-তে দেখেছি।

আপনি bsdtarGNU এর পরিবর্তে কেন ব্যবহার করতে চান tar? সুবিধা কি?

নোট করুন যে আমি সেই ব্যক্তি যিনি জিজ্ঞাসা করেছিলেন বিএসডি এবং জিএনইউ / লিনাক্স ব্যবহারকারীল্যান্ডের মধ্যে প্রধান পার্থক্যগুলি কী?


উত্তর:


29

উবুন্টু bsdtarআসলে তার সাথে বান্ডিল করা টারের বাস্তবায়ন libarchive; এবং এটি শাস্ত্রীয় থেকে পৃথক হওয়া উচিত bsdtar। কিছু বিএসডি ভেরিয়েন্টগুলি libarchiveতাদের টার প্রয়োগের জন্য ব্যবহার করে , যেমন ফ্রিবিএসডি।

GNUtarঅন্যান্য ট্যার ভেরিয়েন্ট এবং স্বয়ংক্রিয় সংক্ষেপণ সনাক্তকরণকে সমর্থন করে ।

হিসাবে visualication উবুন্টু থেকে সংক্ষিপ্ত প্রচার আটকানো, সেখানে সেখানে কিছু বিষয় নির্দিষ্ট হয় libarchive:

  1. libarchiveসংজ্ঞা অনুসারে একটি গ্রন্থাগার, এবং শাস্ত্রীয় bsdtarএবং GNUtarসেভাবে উভয় থেকে পৃথক ।
  2. libarchive কিছু পুরানো অস্পষ্ট জিএনইউ ট্যারে তারতম্যগুলি পড়তে পারে না, সর্বাধিক উল্লেখযোগ্য বেস 64 এ কিছু শিরোনামের এনকোডিং ছিল, যাতে টার ফাইলটি 7-বিট পরিষ্কার ASCII হবে (এটি ছিল 1.13.6-1.13.11 এর জন্য এবং এটি 1.13.12 এ পরিবর্তিত হয়েছে) , সেই কোডটি কেবল 2 সপ্তাহের জন্য সরকারীভাবে ছিল
  3. libarchiveএর bsdtarনন-টার ফাইলগুলি পড়বে (যেমন জিপ, iso9660, সিপিও), তবে ক্লাসিকাল বিএসডিটার এটি পড়বে না।

এখন যেহেতু আমরা libarchiveপথ ছাড়তে পেরেছি, এটি বেশিরভাগ ক্ষেত্রে শাস্ত্রীয় সমর্থিত ক্ষেত্রে নেমে আসে bsdtar

আপনি নিজেই ম্যানেজগুলি দেখতে পাবেন:

আপনার আসল প্রশ্নে, আপনি জিজ্ঞাসা করেছিলেন যে শাস্ত্রীয়ের সুবিধাগুলি কী bsdtarএবং আমি নিশ্চিত যে এর কোনটি আছে any কেবলমাত্র যদি আপনি সমস্ত সিস্টেমে কাজ করার জন্য শেল স্ক্রিপ্টগুলি লেখার চেষ্টা করছেন তবে এটি সত্যই গুরুত্বপূর্ণ; আপনি যা পাস করেছেন তা tarঅবশ্যই সমস্ত ভেরিয়েন্টে বৈধ কিনা তা নিশ্চিত করতে হবে ।

GNUtar, libarchiveএর bsdtar, ধ্রুপদী bsdtar, starএবং BusyBoxএর tarঅবশ্যই আলকাতরা বাস্তবায়নের যে আপনার অধিকাংশ সময় পাতিত করব, কিন্তু আমি নির্দিষ্ট সেখানে অন্যদের সেখানে (উদাহরণস্বরূপ গোড়ার দিকে QNX) হয় আছি। libarchive/ GNUtar/ starসর্বাধিক বৈশিষ্ট্যযুক্ত, তবে অনেক দিক থেকে তারা মূল মানগুলি থেকে সম্ভবত দীর্ঘকাল বিচ্যুত হয়েছে (সম্ভবত উন্নতির জন্য)।


15

বিএসডিটিআর বনাম টিএআর প্লাস আরও অনেক কিছু

এখানে একটি সুবিধা !!

আমি এখানে 5 টি বিষয়ের মধ্যে যাব (এবং বিষয় ছাড়িয়ে যাব, তবে এটি আপনি কী চান তা কভার করবে):

  1. bsdtar vs tar
  2. বিরল ফাইল বনাম না
  3. বিআরটিএফ সহ পুরু এবং পাতলা ফাইল / লুন
  4. বিআরটিএফ ছাড়াই পুরু এবং পাতলা ফাইল / লুন
  5. পুরু এবং পাতলা এবং কীভাবে এটি কেবল লুনসে প্রয়োগ হয় না তার মধ্যে পার্থক্য রয়েছে

bsdtar হ্যান্ডলগুলি sparse ফাইল ভাল তারপর নিয়মিত আলকাতরা

  • বিএসডিটার সমস্ত জিরো নিয়ে নেবে এবং কেবল তাদের মেটাডেটা তুলবে
  • টার আসলে প্রতিটি শূন্যে প্রক্রিয়া করবে

* উদাহরণস্বরূপ: 20 টিবি স্পারসাইফিল (বিগলুন) জুড়ে 10 মেগা ডেটা সহ একটি 20 টিবি স্পার্স ফাইল (যাকে বিগলুন বলে) কল্পনা করুন ... এখন যেহেতু এটি একটি বিরল ফাইল এটি ড্রাইভে কেবল 10 মেগা গ্রহণ করবে।

কীভাবে একটি স্পার ফাইল তৈরি করবেন:

স্পার্স ফাইল - এটি কীভাবে তৈরি করা যায় - এটি সনাক্ত করুন - স্পার্স ফাইলগুলি "পাতলা" লুনগুলির মতো (যদি আপনি এটি লুনের জন্য ব্যবহার করতে চান)। "ঘন" লুনগুলি আলাদা গল্প হবে।

* বিষয় ফিরে:

  • বিগলুনকে বাড়িয়ে দেওয়া 10 ম্যাগের সাথে সাথে সমস্ত লোন জুড়ে ছড়িয়ে পড়া শূন্যগুলির 20tb এর খারাপের সাথে সমস্ত অংশকে টানিয়ে দেবে ... আমার ধারনাতে এটি কিছুটা সময় নেবে, এবং টারের ফাইলটি বেশ বড় আকারের হবে। এছাড়াও - এটি নিষ্কাশন করা - আমি বিরল ফাইলের ট্যারি ফাইলের এক্সট্র্যাক্টটি কখনও করি নি, তবে এটি সম্ভবত সুন্দর নাও হবে; আমি এখানে ভুল হতে পারে।

  • বিগডটারিং বিগলুন মাত্র 10 মেগা ডেটা প্রক্রিয়া করবে এবং ~ 20tb জিরোর জন্য ছোট মেটাডেটা তৈরি করবে।

বেনিফিট? ভাল তাদের অনেক; আমি শুধু উপরে কিছু লিখেছি।

এটি আরএসইএনসি বনাম সিপি-র অনুরূপ

  • এছাড়াও, আপনি যদি কোনও বিশালাকার স্পার্স ফাইলটি রিসাইঙ্ক করেন তবে এটি তারার মতো আচরণ করবে
  • আপনি যদি কোনও বিশাল ফাইলটি সিপি করেন তবে এটি স্বয়ংক্রিয়ভাবে বিএসডিটারের মতো আচরণ করবে (আপনি জিরো পেরিয়ে যাওয়ার জন্য সিপি'এস আচরণটি পরিবর্তন করতে পারবেন, বা শূন্যের ওপরে যাবেন না)

ব্যক্তিগতভাবে, আমি পাতলা লুনসের মতো স্পার্স ফাইল এবং ঘন লুনসের মতো নিয়মিত ফাইলগুলি কল্পনা করতে চাই ...

পরবর্তী বিষয় Btrfs পুরু LUNs বনাম পাতলা:

  • মত ফাইল সিস্টেম দিয়ে Btrfs পাতলা LUNs বিক্ষিপ্ত ফাইল (, আরোপ করা সঙ্গে এটি করতে উইকি দস্তাবেজে অন্তর্ভুক্ত মত) আছে।

     truncate -s <size in kilobytes> filename
    

    টিপ: সঙ্গে ব্যাকআপ bsdtar সঙ্গে কপি CP

  • পুরু লুনগুলি হ'ল + সি অ্যাট্রিবিউটের (+ সি যাতে এটি কোনও সিও না করে, লেখার অনুলিপি সহ নিয়মিত ফাইল থাকে যাতে সমস্ত লেখাই যেদিকে বরাদ্দ থাকে সেদিকেই আবদ্ধ থাকে এবং ওভাররাইট থাকলে সেখানে কোনও নতুন লেখার ঘটনা ঘটে না বা মুছে ফেলা - গবেষণা COW এবং বিটিআরএফএস )। কাটছাঁট করে ফাইলটি তৈরি করার পরিবর্তে, এটি "ফলোকেট-এল" দিয়ে তৈরি করুন

    fallocate -l <size in kilobytes> filename
    chattr +C filename
    

    টিপ: বিএসডিটার বা টারের সাথে ব্যাকআপ, আরএসসিএনসি বা সিপি দিয়ে অনুলিপি করুন

পরের বিষয়টি EXT পাতলা বনাম পুরু লুনস:

  • পাতলা লুনস যা বিরল

    truncate -s <size in kilobytes> filename
    

    টিপ: সঙ্গে ব্যাকআপ bsdtar সঙ্গে কপি CP

  • পুরু লুনগুলি হ'ল + সি অ্যাট্রিবিউটের (+ সি) যাতে নিয়মিত ফাইল হয় না, লেখার অনুলিপি করে, যাতে সমস্ত লেখাগুলি তার বরাদ্দকৃত স্থানেই আটকে থাকে এবং ওভাররাইট থাকে যখন সেই ফাইলটির জন্য কোনও নতুন লেখার ঘটনা ঘটে না বা মুছে ফেলা - গবেষণা COW এবং বিটিআরএফএস )। কাটছাঁট করে ফাইলটি তৈরি করার পরিবর্তে, এটি "ফলোকেট-এল" দিয়ে তৈরি করুন

    touch filename
    fallocate -l <size in kilobytes> filename
    

    টিপ: বিএসডিটার বা টারের সাথে ব্যাকআপ, আরএসসিএনসি বা সিপি দিয়ে অনুলিপি করুন

একটি পুরু বনাম পাতলা ফাইল কি

  • পুরু লুনস / ফাইলগুলি, 0 থেকে বরাদ্দ করা মাপ পর্যন্ত তাদের ডেটা পূরণ করুন, মেটাডেটা যেখানে 0 আছে তা ভান করে। আপনি ডেটা পূরণ করার সাথে সাথে ডেটা পূরণ হয়
  • পুরু লুনস / ফাইল: 0 সেগুলি বা যা কিছু (অলস শূন্য বা উত্সাহী শূন্য) দিয়ে তাদের ডেটা শুরুতে পূরণ করুন - এই সেটগুলি সংরক্ষণগুলি (বা জেডএফএস রিফ্রিজারেশনগুলি কল করতে পছন্দ করে)

ভিএমওয়ারের নিবন্ধটি এখানে অলস বনাম আগ্রহী শূন্যকে ঘন লুনস / ফাইলগুলির সাথে বর্ণনা করে: https://communities.vmware.com/message/2199576

ডগা

মনে রাখবেন পুরু এবং পাতলা কেবল লুনগুলির জন্যই প্রযোজ্য নয়, এটি ফাইলগুলি, জেডএফএস ফাইল সিস্টেমগুলি (শেয়ার / খণ্ডগুলি / লুনস) এও থাকতে পারে এবং আমি নিশ্চিত যে অন্যান্য জিনিস (কেবল zfs দেখুন)।


1
সুন্দর এবং পুঙ্খানুপুঙ্খ। সাইটে স্বাগতম ...
eyoung100

1
- যে কোনও টার সাথে স্পার করুন: সর্বাধিক টাকার বাস্তবায়নের জন্য কেবল পাস করুন, তারা সকলেই দীর্ঘকাল ধরে এটি সমর্থন করে। - rsync দিয়ে স্পার করুন: আবার, পাস করুন - স্পার করুন, এটি কাজ করে। যে কোনও স্পারস ডিটেকশন ব্যবহারের নেতিবাচক দিকটি হ'ল টুলটিকে আসলে আরও বেশি ব্লকগুলি পড়তে হয়, যা প্রচুর সিপিইউ চালু করতে পারে (যেমন শূন্য / অ-শূন্য রানের ক্ষেত্রে ক্ষেত্রে)।
রোবট 2

এটি এখনও বিএসডিটার ব্যবহার করা আরও ভাল, যদিও গ্নু টার বিচ্ছিন্ন পতাকাটিকে সমর্থন করে, কারণ বিএসডিটার কীভাবে প্রসেস না করে কীভাবে বিচ্ছুর ছিদ্রগুলি ছাড়বেন তা জানেন (উদাহরণস্বরূপ যদি আপনার কাছে 1 টিবি স্পার ফাইল রয়েছে কেবল মাত্র 1 কে ডেটা, বিএসডিটার 1 কে প্রক্রিয়া করবে)
ডেটা।গনু

13

উবুন্টু প্যাকেজ বিবরণ থেকে ( http://packages.ubuntu.com/de/lucid/bsdtar )

"বিএসডিটার প্রোগ্রামটির আগের টার বাস্তবায়নের তুলনায় অনেক সুবিধা রয়েছে:

  • লাইব্রেরি। যেহেতু মূল কার্যকারিতাটি একটি লাইব্রেরিতে রয়েছে তাই এটি অন্য সরঞ্জামগুলি যেমন পিকেজি_এডিডি দ্বারা ব্যবহার করা যেতে পারে।
  • স্বয়ংক্রিয় বিন্যাস সনাক্তকরণ। সংরক্ষণাগারগুলি আর্কাইভগুলি পড়ার সময় স্বয়ংক্রিয়ভাবে সংক্ষেপণ (কোনও / gzip / bzip2) সনাক্ত করে এবং ফর্ম্যাট (পুরানো টার, ustar, gnuar, প্যাক্স, সিপিও, iso9660, জিপ) সনাক্ত করে। এটি কোনও ডেটা উত্সের জন্য এটি করে।
  • প্যাকস ইন্টারচেঞ্জ ফর্ম্যাট সমর্থন। এটি পুরানো "ustar" ট্যুর বিন্যাসে একটি পসিক্স / এসইউএস 3 এক্সটেনশন যা প্রতিটি প্রবেশের ক্ষেত্রে স্বেচ্ছাসেবী প্রসারিত বৈশিষ্ট্য যুক্ত করে। জিএনইউ ট্যর ফর্ম্যাট করে এমন সমস্ত কি কেবল আরও ভাল।
  • ফাইল পতাকা, এসিএল, স্বেচ্ছাচারী পথের নাম ইত্যাদি পরিচালনা করে প্যাক্স ইন্টারচেঞ্জ ফর্ম্যাটটি সহজেই এক্সটেনসিবল প্রযুক্তি ব্যবহার করে কী / মান বৈশিষ্ট্যগুলিকে সমর্থন করে। যথেচ্ছ পথের নাম, গোষ্ঠীর নাম, ব্যবহারকারীর নাম, ফাইলের আকারগুলি পসিক্স স্ট্যান্ডার্ডের একটি অংশ; লিবারচাইভ ফাইল পতাকা, এসিএল, এবং স্বেচ্ছাসেবী ডিভাইস সংখ্যাগুলির সমর্থন সহ এটি প্রসারিত করে।
  • জিএনইউ টার সমর্থন। লিবারচাইভ বেশিরভাগ জিএনইউ টার আর্কাইভ পড়ে। চাহিদা থাকলে এটিকে আরও উন্নতি করা যায়। "

1

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

ম্যানুয়াল পৃষ্ঠাগুলি আমার পড়া থেকে (অতি সম্প্রতি http://www.freebsd.org/cgi/man.cgi?query=tar&sektion=1 উপরে একটি পুনর্বিবেচিত হবে ) ফ্রিবিএসড টারে (-ডি, - ডিফের অভাব রয়েছে) , --compare) সামর্থ্য। এটি অবাক করার মতো বিষয় নয়, কারণ ফ্রিবিএসডি ডাম্প / রিস্টোরের লেখকরা এ জাতীয় কিছু সরবরাহ করেন নি বলে মনে হয়।

আমি নিশ্চিতভাবে জানি না যে জিনু টার সমস্ত ইউএফএস মেটাডেটাকে ফ্রিবিএসডি টার হিসাবে যুক্ত হিসাবে যুক্ত করবে এবং এটি একটি গুরুত্বপূর্ণ বিষয় issue তবে আমার রুচির জন্য, আমি আউটপুট ফাইলের MD5 যোগফল সংরক্ষণ না করা পর্যন্ত একটি ডাম্পকে কখনই সম্পূর্ণ বিবেচনা করতে পারি না এবং আমি ডাম্প ফাইলটির সাথে তুলনা করি যা আমি ধারণা করে ফেলেছি against বিভিন্ন সমস্যা ডাম্পড ডেটা ডিস্কের থেকে পৃথক হতে পারে। (কেবল ফাইল পরিবর্তন নয়, ডিস্ক ত্রুটি, মেমরির ত্রুটি, মেশিনের ত্রুটি এবং আরও অনেক কিছু actually যা আসলে আমার কাছে ঘটেছিল))

আমার নিজের মতে, এটি স্টক ফ্রিবিএসডি সিস্টেমে সত্যিকারের ব্যাকআপগুলি তৈরি করার জন্য আমি এখনও অবধি একমাত্র বিকল্পকে জিনু টারকে পরিণত করেছি।

আমি সত্যিই অন্যথায় শিখতে চাই, FWIW। আমি কমপক্ষে পার্টিশন ক্লোনিং এবং হার্ড-রিকভারি ব্যাকআপের জন্য নেটিভ ইউটিলিটিগুলি ব্যবহার করতে পছন্দ করব। তবে যদি কেউ ডাম্পের সঠিকতা যাচাই করতে না পারে তবে আমি এটি তৈরির বিরক্ত করার দিকটি দেখতে পাচ্ছি না।


1
  • বিএসডিটির বাক্সটি @archiveসিনট্যাক্স ব্যবহার করে অন্যান্য সংরক্ষণাগার থেকে আসা সদস্যদের পড়তে ও ডার করতে পারে can

  • জিএনইউ টারের --deleteবিকল্প রয়েছে - যদিও সম্প্রতি আমি পেয়েছি যে এটি সংরক্ষণাগারটিকে দূষিত করতে পারে।

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