क्या tar वास्तव में फ़ाइलों को संपीड़ित करता है, या केवल उन्हें एक साथ समूहित करता है?


37

मुझे आमतौर पर लगता है कि tarएक संपीड़न उपयोगिता थी, लेकिन मैं अनिश्चित हूं, क्या यह वास्तव में फाइलों को संपीड़ित करता है, या क्या यह केवल आईएसओ फाइल, फाइलों को रखने के लिए एक फाइल की तरह है?


जवाबों:


49

टार एक आर्काइविंग टूल (टेप आर्काइव) है, यह केवल फाइलों और उनके मेटाडेटा को एक साथ इकट्ठा करता है और एक फाइल तैयार करता है। यदि आप उस फ़ाइल को बाद में संपीड़ित करना चाहते हैं तो आप gzip / bzip2 / xz का उपयोग कर सकते हैं। सुविधा के लिए, टार आपके लिए संग्रह को स्वचालित रूप से संपीड़ित करने के लिए तर्क प्रदान करता है। अधिक जानकारी के लिए टार मैन पेज चेकआउट करें।


9
उत्तर पर एक मामूली स्पष्टीकरण। यह GNU टार है जो उन अतिरिक्त संपीड़न तर्कों को प्रदान करता है। उदाहरण के लिए, सोलारिस टार संपीड़न के लिए तर्क प्रदान नहीं करता है।
तेरो किलक्कनन

5
ऊह, यही कारण है कि मैं देख रहा हूँthing.tar.7z
मूइंग डक

बीएसडी टार संपीड़न के लिए एक तर्क भी प्रदान करता है, हालांकि यह केवल zविस्तार के आधार पर संपीड़न विधि को स्वीकार करता है और निर्धारित करता है , जबकि जीएनयू टार में अलग- zZjJअलग संपीड़न विधियों के लिए अलग-अलग तर्क हैं।
विंगडसुम्ब्रेनर

2
बस बीएसडी टार मैनपेज पढ़ें, और यह पता चला कि मुझसे गलती हुई थी, बीएसडी टार zZjJजीएनयू टार की तरह ही संपीड़न के लिए अलग से उपयोग करता है । हालाँकि, यह स्वचालित रूप से संपीड़न का पता लगाता है जब डिकम्प्रेसिंग होता है, जबकि GNU टार की उम्मीद है zZjJतब भी।
विंगडसुम्ब्रेनर

5
@wingedsubmariner: नहीं; विकल्प की tarआवश्यकता के बिना GNU डीकंप्रेस के आधुनिक-ish संस्करण स्वचालित रूप से -zZjJ
जोनाथन लेफ़लर

17

tarअभिलेखागार का निर्माण करता है; संपीड़न एक अलग कार्यक्षमता है। हालाँकि tar अकेले अंतरिक्ष उपयोग को कम कर सकते हैं जब बड़ी संख्या में छोटी फ़ाइलों का उपयोग किया जाता है जो कि फाइलसिस्टम के क्लस्टर आकार से छोटी होती हैं। यदि एक फाइलसिस्टम 1kb क्लस्टर का उपयोग करता है, तो भी एक फाइल जिसमें सिंगल बाइट होता है, 1kb (प्लस इनोड) का उपभोग करेगा। एक tarसंग्रह में यह ओवरहेड नहीं है।

BTW, एक आईएसओ फाइल वास्तव में "फाइलों को पकड़ने के लिए एक फाइल" नहीं है - यह वास्तव में एक संपूर्ण फाइल सिस्टम की छवि है (मूल रूप से सीडी पर उपयोग किए जाने के लिए डिज़ाइन किया गया है) और इस प्रकार इसकी संरचना काफी अधिक जटिल है।


3
वास्तव में एक खाली फ़ाइल 1kb का उपभोग नहीं करेगी। एक 1-1023 बाइट फ़ाइल होगी।
Psusi

@psusi तो बाइट्स 1-1023 की एक फाइल के लिए 1024 का उपभोग करना होगा, जिसके परिणामस्वरूप 1023-1 बाइट्स का अपव्यय होता है।
शिप्लू मोकादिम

2

मूल UNIX टार कमांड ने अभिलेखागार को संपीड़ित नहीं किया। जैसा कि एक टिप्पणी में उल्लेख किया गया था, सोलारिस टार सेक नहीं करता है। न ही एचपी-यूएक्स, न ही एआईएक्स, एफडब्ल्यूआईडब्ल्यू। अधिवेशन द्वारा, असम्बद्ध अभिलेखागार समाप्त होते हैं .tar

जीएनयू / लिनक्स के साथ आपको जीएनयू टार मिलता है। (आप अन्य यूनिक्स प्रणालियों पर जीएनयू टार स्थापित कर सकते हैं।) डिफ़ॉल्ट रूप से यह संपीड़ित नहीं करता है; हालाँकि, यदि आप आपूर्ति करते हैं तो यह परिणामी संग्रह को gzip (GNU द्वारा भी) संपीड़ित करता है-z । Gzipped फ़ाइलों के लिए पारंपरिक प्रत्यय है .gz, इसलिए आप अक्सर टारबॉल देखेंगे (टार संग्रह के लिए स्लैंग, आमतौर पर इसका मतलब है कि यह संकुचित हो गया है) जो अंत में है .tar.gz। इसका मतलब है कि टार्जी टार चलाए जा रहे थे, इसके बाद gzip, जैसे tar cf - .|gzip -9v > archive.tar.gz। आपको अभिलेखागार भी समाप्त हो जाएंगे .tgz, जैसे tar czf archive.tgz .

संपादित करें: www.linfo.org/tar.html ने मुझे याद दिलाया कि GNU टार केवल gzip के साथ संपीड़ित करने की तुलना में बहुत अधिक कार्यक्षमता का समर्थन करता है, और इसने मुझे याद दिलाया कि प्रत्यय सादे सम्मेलनों से अधिक हैं। उनके पास अंतर्निहित शब्दार्थ हैं। यह bzip2 ( -jfor .bz2) और पुराने कंप्रेस ( -Zfor .Z) को भी सपोर्ट करता है । फिर मैंने मैन पेज देखा और याद दिलाया गया कि -aप्रत्यय के आधार पर स्वचालित रूप से आपके वांछित संपीड़न विधि का नक्शा तैयार किया गया है।

एक अन्य नाइट। जैसा कि लिनक्स टार मैन पेज कहता है, जीएनयू इंफो पेजों का निर्माण करता है, मैन पेजों का नहीं, इसलिए सभी जीएनयू टार के बारे में जानने के लिए दौड़ें info tar


ग्नू टार अभी भी खुद से कंप्रेशंस को हैंडल नहीं करता है, यह बस पाइप से / गज़िप, बज़िप 2, सेक और अन्य से पाइप करता है।
ott-- 20

मुझे स्रोत पर एक नजर थी । GNU टार संपीड़न संभालती है! कार्यान्वयन कोड पुन: उपयोग का लाभ लेता है और UNIX उपयोगकर्ता अंतरिक्ष वास्तु सिद्धांतों को ध्वनि देता है। "बस पाइप" समझ रहा है कि किस तरह से संपीड़न को उपकरण में कसकर एकीकृत किया गया है। तथ्य यह है कि यह कांटा सहायक कार्यक्रमों के लिए होता है एक तकनीकीता है। यदि आप "सिर्फ पाइप" का बचाव करना चाहते हैं, तो फ़ाइल नाम और लाइन नंबर का हवाला दें और आइए देखें कि समुदाय किस पक्ष को लेता है।
tbc0

मुझे उस स्रोत की जांच करने में कुछ दिन लग सकते हैं।
ott--

1

जब तक आप ऐसा करने के लिए तर्क नहीं देते हैं, तब तक टार यूटिलिटी संपीड़ित नहीं होती है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.