भले ही यह उपलब्ध तेज़ आर्काइविंग/कम्प्रेशन समाधानों में से एक है, gzip की एक छोटी समस्या है: यह मल्टीपल प्रोसेसर/कोर को सपोर्ट नहीं करता। इस प्रकार, यदि आपके पास अपेक्षाकृत नया PC है, तो यह इसकी क्षमताओं का लाभ नहीं उठाता। Pigz, gzip का एक मल्टी-थ्रेडेड इम्प्लीमेंटेशन है जो आपको GNU zip फॉर्मेट में फ़ाइलों को समय के एक अंश में कम्प्रेस करने की अनुमति देता है। यहां pigz के साथ अपनी फ़ाइलों को तेज़ी से कम्प्रेस करने का तरीका बताया गया है।
इंस्टॉलेशन
Ubuntu, Mint, और अन्य Debian-आधारित डिस्ट्रीब्यूशन पर pigz इंस्टॉल करने के लिए, उपयोग करें:
sudo apt install pigz
Arch और Manjaro Linux पर, इसे इसके साथ इंस्टॉल करें:
sudo pacman -S pigz
यदि आप openSUSE उपयोग कर रहे हैं, तो कोशिश करें:
sudo zypper install pigz
सिंगल फ़ाइल कम्प्रेस करना
किसी भी फ़ाइल को pigz के साथ GNU Zip फॉर्मेट में कम्प्रेस करने के लिए, उपयोग करें:
pigz FILE_NAME
कुछ के लिए, यह समस्या हो सकती है कि, डिफ़ॉल्ट रूप से, pigz कम्प्रेशन के बाद मूल फ़ाइल को हटा देता है। यदि आप इसे रखना चाहते हैं, तो आपको -k स्विच का उपयोग करना होगा (ध्यान दें कि यह लोअरकेस है)।
pigz -k FILE_NAME
Pigz कम्प्रेशन के कई स्तरों को सपोर्ट करता है, और आप डैश के बाद उनकी संख्या बताकर उनमें से चुन सकते हैं। उदाहरण के लिए:
pigz -5 FILE_TO_BE_COMPRESSED
आप 1 से 9 तक की संख्याओं का उपयोग कर सकते हैं, जहां "1" सबसे तेज़ प्रदर्शन लेकिन सबसे कम कम्प्रेशन प्रदान करता है और "9" सबसे धीमा लेकिन उच्चतम कम्प्रेशन प्रदान करता है।
फ़ोल्डर्स कम्प्रेस करना
Pigz की एक महत्वपूर्ण सीमा है: यह फ़ोल्डर्स को सपोर्ट नहीं करता। आप केवल इसके साथ सिंगल फ़ाइलों को कम्प्रेस कर सकते हैं। एक समाधान है इसे tar के साथ उपयोग करना।
मान लीजिए आप अपने "Pictures" फ़ोल्डर को कम्प्रेस करना चाहते हैं। चूंकि tar एक्सटर्नल कम्प्रेशन प्रोग्राम के उपयोग को सपोर्ट करता है, आप निम्न कर सकते हैं:
tar --use-compress-program="pigz -k -9" -cf pictures.tar.gz Pictures
उपरोक्त कमांड में, tar --use-compress-program बताता है कि हालांकि आप tar के साथ एक फ़ाइल आर्काइव बनाएंगे, इसकी सामग्री का कम्प्रेशन एक एक्सटर्नल प्रोग्राम के माध्यम से होगा।
यह एक्सटर्नल प्रोग्राम और इसके पैरामीटर्स pigz -k -9 कमांड के भाग के साथ परिभाषित किए गए हैं।
अंत में, बताएं कि आप Create a File ("-cf") नामक "pictures.tar.gz" बनाना चाहते हैं जिसमें "Pictures" फ़ोल्डर में मिली हर चीज़ हो।
फ़ाइलों और फ़ोल्डर्स को डीकम्प्रेस करना
किसी भी gz फ़ाइल को pigz के साथ डीकम्प्रेस करना निम्नलिखित कमांड्स में से किसी को दर्ज करने जितना सरल है:
pigz -d FILENAME.gz unpigz FILENAME.gz
हमारे पहले बनाए गए tar.gz फ़ाइलों में, फ़ोल्डर्स को डीकम्प्रेस करना वही "tar" दृष्टिकोण उपयोग करता है।
tar --use-compress-program="pigz -d" -xvf pictures.tar.gz
पैरेललाइज़ेशन सीमित करना
अंत में, यह ध्यान दिया जाना चाहिए कि एक अतिरिक्त स्विच काम आ सकता है: p। Pigz, डिफ़ॉल्ट रूप से, आपके कंप्यूटर में सभी प्रोसेसर/कोर का उपयोग करता है। बड़े डेटा सेट को कम्प्रेस करते समय, यह आपके कंप्यूटर की प्रतिक्रियाशीलता को प्रभावित कर सकता है।
p स्विच के साथ, आप pigz को केवल एक विशिष्ट संख्या में प्रोसेसर/कोर का उपयोग करने तक सीमित कर सकते हैं। यह बाकी कोर को आपके अन्य कार्यों और इंटरएक्टिविटी के लिए मुक्त छोड़ देगा। ऐसा करने के लिए, स्विच के ठीक बाद प्रोसेसर/कोर की संख्या जोड़ें:
pigz -k -p2 FILE_TO_BE_COMPRESSED
-p2 pigz को केवल दो प्रोसेसर/कोर का उपयोग करने तक सीमित करता है। आप कोई भी संख्या उपयोग कर सकते हैं, लेकिन सुझाव दिया जाता है कि आप इसे अपने हार्डवेयर की सीमा के भीतर रखें।
लिनक्स में फ़ाइल कम्प्रेशन और एक्सट्रैक्शन के बारे में अधिक जानने के लिए, लिनक्स के आर्काइविंग और कम्प्रेशन कमांड्स पर हमारे गहन गाइड को देखें।