Computer >> कंप्यूटर >  >> प्रणाली >> Linux

तार के साथ सभी सीपीयू कोर का उपयोग करके अभिलेखागार को कैसे संपीड़ित करें

तार के साथ सभी सीपीयू कोर का उपयोग करके अभिलेखागार को कैसे संपीड़ित करें

अगर आपको कभी भी tar . के साथ बड़े वॉल्यूम को कंप्रेस करना पड़ा हो , आपको पता चल जाएगा कि यह कितना दर्द हो सकता है। यह अक्सर बहुत धीमी गति से चलता है, और आप अपने आप को Ctrl . मारते हुए पाते हैं + सी कार्य को समाप्त करने के लिए और बस इसके बारे में भूल जाओ। हालाँकि, कुछ अन्य उपकरण हैं जो टार उपयोग कर सकते हैं, और वे आज के भारी बहु-थ्रेडेड सीपीयू का उपयोग करने और आपके टार संग्रह को गति देने का एक शानदार तरीका हैं। यह लेख आपको दिखाता है कि लिनक्स में आर्काइव्स को कंप्रेस करते समय टार को सभी कोर का उपयोग कैसे करें।

टूल्स को समझना और इंस्टॉल करना

यहां विचाराधीन तीन मुख्य उपकरण पिगज़, पीबीज़िप 2 और पीएक्सजेड हैं। टूल के बीच कुछ सूक्ष्म अंतर हैं, लेकिन अंतर gzip, bzip2 और xz के बीच हैं। उस संबंधित क्रम में, संपीड़न स्तर बढ़ता है, जिसका अर्थ है कि gzip के साथ संपीड़ित एक संग्रह xz के साथ संपीड़ित एक से बड़ा होगा, लेकिन gzip स्वाभाविक रूप से xz की तुलना में कम समय लेगा। bzip2 बीच में कहीं है।

प्रत्येक उपकरण के नाम शुरू करने वाले "पी" का अर्थ "समानांतर" है। समानांतरीकरण एक ऐसी चीज है जो पिछले कुछ वर्षों में तेजी से अधिक प्रासंगिक हो गई है - सभी सीपीयू कोर कितनी अच्छी तरह फैले हुए हैं। एएमडी की एपिक और थ्रेडिपर लाइनों जैसे सीपीयू के साथ जो 64 कोर और 128 थ्रेड तक पहुंच सकते हैं, यह समझना महत्वपूर्ण है कि कौन से एप्लिकेशन इसका उपयोग कर सकते हैं। ये संपीड़न कार्य प्रमुख उम्मीदवार हैं।

टूल इंस्टॉल करने के लिए, आप बस अपने रेपो की ओर रुख कर सकते हैं।

sudo apt install pigz pbzip2 pxz # Debian/Ubuntu
sudo dnf install pigz pbzip2 pxz # Fedora
sudo pacman -Sy pigz pbzip2 pxz   # Arch Linux
तार के साथ सभी सीपीयू कोर का उपयोग करके अभिलेखागार को कैसे संपीड़ित करें

निरंतरता के लिए यह लेख pxz पर केंद्रित है। आप पिग्ज़ के लिए यह ट्यूटोरियल देख सकते हैं।

संग्रह को टार से संपीडित करना

टार का सिंटैक्स काफी सरल है। किसी निर्देशिका को केवल संपीड़ित करने के लिए, आप इस तरह से एक कमांड का उपयोग कर सकते हैं:

tar czf linux-5.10-rc3.tar.gz linux/
tar cjf linux-5.10-rc3.tar.bz2 linux/
tar cJf linux-5.10-rc3.tar.xz linux/

पहला gzip का उपयोग करेगा, दूसरा bzip2 का उपयोग करेगा, और तीसरा xz का उपयोग करेगा। आप जो कर रहे हैं उसके आधार पर फ़ाइल का नाम और निर्देशिका अलग-अलग होगी, लेकिन मैंने GitHub से Linux कर्नेल को अपनी "/home" निर्देशिका में खींच लिया, और मैं उसका उपयोग करूंगा। इसलिए, मैं आगे बढ़ूंगा और उस आदेश को time . के साथ शुरू करूंगा यह देखने के लिए कि इसमें कितना समय लगता है, सामने की ओर कमांड करें। आप यह भी देख सकते हैं कि xz इस सिस्टम पर मेरे CPU का उच्चतम प्रतिशत लेने के रूप में सूचीबद्ध है, लेकिन यह केवल एक कोर को 100 प्रतिशत पर पिन कर रहा है।

तार के साथ सभी सीपीयू कोर का उपयोग करके अभिलेखागार को कैसे संपीड़ित करें तार के साथ सभी सीपीयू कोर का उपयोग करके अभिलेखागार को कैसे संपीड़ित करें

और, जैसा कि आप देख सकते हैं, मेरी उम्र बढ़ने वाले i7-2600s को Linux 5.10-rc3 (लगभग 28 मिनट) को संपीड़ित करने में बहुत लंबा समय लगा।

तार के साथ सभी सीपीयू कोर का उपयोग करके अभिलेखागार को कैसे संपीड़ित करें

यह वह जगह है जहाँ ये समानांतर संपीड़न उपकरण काम में आते हैं। अगर आप किसी बड़ी फ़ाइल को कंप्रेस कर रहे हैं और उसे तेज़ी से पूरा करना चाहते हैं, तो मैं इन टूल की पर्याप्त अनुशंसा नहीं कर सकता।

टार के साथ समानांतर संपीड़न टूल का उपयोग करना

आप या तो टार को --use-compression-program . के साथ एक कम्प्रेशन प्रोग्राम का उपयोग करने के लिए कह सकते हैं विकल्प, या आप -I . के थोड़े सरल कमांड फ्लैग का उपयोग कर सकते हैं . इनमें से किसी भी टूल के सिंटैक्स का एक उदाहरण इस प्रकार होगा:

tar -I pigz -cf linux-5.10-rc3.tar.gz linux/
tar -I pbzip2 -cf linux-5.10-rc3.tar.bz2 linux/
tar -I pxz -cf linux-5.10-rc3.tar.xz linux/

आइए इसका परीक्षण करें और देखें कि मेरे सिस्टम को मेरे सीपीयू के सभी आठ थ्रेड्स तक पहुंच के साथ लिनक्स कर्नेल को संपीड़ित करने में कितना समय लगता है। आप मेरा htop देख सकते हैं pxz के कारण 100 प्रतिशत उपयोग पर पिन किए गए सभी थ्रेड्स को रीडआउट दिखा रहा है।

तार के साथ सभी सीपीयू कोर का उपयोग करके अभिलेखागार को कैसे संपीड़ित करें तार के साथ सभी सीपीयू कोर का उपयोग करके अभिलेखागार को कैसे संपीड़ित करें

आप देख सकते हैं कि उस संग्रह को संपीड़ित करने में काफी कम समय लगा (लगभग सात मिनट!), और वह मल्टीटास्किंग के साथ था। मेरे पास पृष्ठभूमि में एक वर्चुअल मशीन चल रही है, और मैं इस समय कुछ वेब ब्राउज़िंग कर रहा हूं। Linux कर्नेल हार्डवेयर शेड्यूलर आपको वह देगा जो आपको अपने व्यक्तिगत सामान के लिए चाहिए, इसलिए यदि आपने अपना pxz छोड़ दिया है आपके सिस्टम पर चल रहे किसी अन्य सामान के बिना चलाने का आदेश, आप इसे तेजी से पूरा करने में सक्षम हो सकते हैं।

तार के साथ सभी सीपीयू कोर का उपयोग करके अभिलेखागार को कैसे संपीड़ित करें

पिगज़, pbzip2 और pxz के साथ संपीड़न स्तर समायोजित करना

आप फ़ाइल को और भी छोटा बनाने के लिए संपीड़न स्तर को pxz में पास कर सकते हैं। इसके लिए अधिक RAM, CPU और समय की आवश्यकता होगी, लेकिन यह इसके लायक है यदि आपको वास्तव में एक छोटी फ़ाइल प्राप्त करने की आवश्यकता है। यहां दो कमांड और उनके परिणामों की साथ-साथ तुलना की गई है।

तार के साथ सभी सीपीयू कोर का उपयोग करके अभिलेखागार को कैसे संपीड़ित करें तार के साथ सभी सीपीयू कोर का उपयोग करके अभिलेखागार को कैसे संपीड़ित करें तार के साथ सभी सीपीयू कोर का उपयोग करके अभिलेखागार को कैसे संपीड़ित करें

संपीड़न इतना अधिक नहीं है, और समय इसके लायक नहीं है, लेकिन अगर हर मेगाबाइट मायने रखता है, तो यह अभी भी एक बढ़िया विकल्प है।

मुझे आशा है कि आपने टार का उपयोग करके अभिलेखागार को संपीड़ित करने के लिए सभी कोर का उपयोग करने के लिए इस गाइड का आनंद लिया है। हमारी कुछ अन्य लिनक्स सामग्री की जाँच करना सुनिश्चित करें, जैसे कि लिनक्स के लिए एक नया पीसी कैसे बनाया जाए, Apt में महारत हासिल करना और Apt गुरु बनना, और रास्पबेरी पाई पर आर्क लिनक्स कैसे स्थापित करना है।


  1. लिनक्स में शार्प के साथ सेल्फ-एक्सट्रैक्टिंग आर्काइव्स कैसे बनाएं

    क्या यह कष्टप्रद नहीं है, यहां तक ​​​​कि थकाऊ, किसी संपर्क को यह समझाने के लिए कि यह क्या है और उन्हें एक संग्रह भेजने के बाद इसे कैसे अनपैक करना है? यदि आपने हां में उत्तर दिया है, तो आपको Linux में शार्प पसंद आएगा। तेज के साथ, आप कई फाइलों को एक में पैक कर सकते हैं। यदि आप इसे अपने किसी संपर्क को

  1. Minikube का उपयोग करके अपने लैपटॉप पर Kubernetes के साथ कैसे प्रारंभ करें

    हमने पिछले ट्यूटोरियल में कुबेरनेट्स की मूल बातें पहले ही कवर कर ली हैं। सिंगल-नोड Kubernetes क्लस्टर के रूप में, Minikube आपके लैपटॉप पर Kubernetes चलाने का सबसे अच्छा तरीका है क्योंकि इसे एक वर्चुअल मशीन के अंदर वर्गाकार रूप से रखा जा सकता है। Kubernetes की आधिकारिक वेबसाइट मिनिक्यूब के साथ आरंभ

  1. सिनेबेंच के साथ अपने सीपीयू को बेंचमार्क कैसे करें

    यदि आपने अभी-अभी एक शक्तिशाली नया CPU लिया है, जैसे कि Ryzen 7 परिवार में से एक, जैसे कि 5800X या 5900X, तो आप भाग्यशाली हैं! अपने नए सीपीयू को वास्तव में अपने पेस के माध्यम से रखने का सबसे अच्छा तरीका इसे बेंचमार्क करना है। ऐसे कई उपकरण हैं जिनका आप उपयोग कर सकते हैं, लेकिन सिनेबेंच अधिकांश उत्साही