Linux bzmore कमांड: बिना डीकंप्रेस किए bzip2 फाइल देखें

परिचय: बिना एक्सट्रैक्ट किए bzip2 डेटा पढ़ना

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

bzmore पैकेज की जांच और टेस्ट आर्काइव तैयार करना

सबसे पहले अपने सिस्टम के पैकेज इंडेक्स को रीफ्रेश करके सुनिश्चित करें कि आवश्यक आर्काइव टूल्स उपलब्ध हैं। इसके लिए bzip2 पैकेज इंस्टॉल करते हैं।

APT पैकेज मैनेजर से bzip2 टूल इंस्टॉल करना

टेस्टिंग के उद्देश्य से हम कुछ बुनियादी सिस्टम इवेंट्स का एक डमी लॉग service.log नाम से जनरेट करेंगे, जिसके लिए echo कमांड का उपयोग किया जाता है।

echo कमांड से सैंपल लॉग तैयार करना

डिफ़ॉल्ट रूप से bzip2 कंप्रेस करने के बाद ओरिजिनल फाइल को हटा देता है। मूल डेटा सुरक्षित रखने के लिए हम -k फ्लैग लगाकर कंप्रेस्ड वर्जन तैयार करते हैं।

मूल फाइल सुरक्षित रखते हुए कंप्रेस करना

दोनों फाइलों (मूल टेक्स्ट और संपीड़ित आर्काइव) का निर्माण सत्यापित करने और आकार का अंतर जांचने के लिए लिस्टिंग कमांड चलाएं।

फाइल लिस्टिंग और साइज का मिलान

bzmore का बुनियादी उपयोग: आर्काइव सीधे पढ़ना

परीक्षण से पहले लक्षित .bz2 फाइल के मेटाडेटा और सटीक साइज की दोबारा पुष्टि कर लें।

कंप्रेस्ड फाइल का आकार जांचना

अतिरिक्त डिस्क स्पेस का उपयोग किए बिना संपीड़ित टेक्स्ट सामग्री को स्ट्रीम करने के लिए bzmore सबसे तेज तरीका है।
जब आप bzmore service.log.bz2 रन करते हैं, तो कमांड बैकग्राउंड में स्ट्रीम को डीकोड करके फाइल हेडर और पूरे लॉग संदेशों को सीधे आपके कंसोल पर पेश कर देता है।

bzmore द्वारा bz2 फाइल की सामग्री देखना

बड़ी फाइलों का पेजिनेशन और टर्मिनल नेविगेशन

स्क्रीन बफर से अधिक लंबी फाइलों में स्क्रॉलिंग का परीक्षण करने के लिए, हम 120 लाइनों वाला एक बड़ा इवेंट लॉग बनाकर उसे सीधे आर्काइव में बदल लेते हैं।

seq और sed के जरिए बड़ा कंप्रेस्ड लॉग बनाना

अब bzmore large_events.log.bz2 निष्पादित करते ही आउटपुट एक साथ स्क्रॉल होने के बजाय व्यवस्थित पेजों में विभाजित हो जाता है।
यहाँ नेविगेशन बेहद सहज है: पूरा एक पेज आगे बढ़ने के लिए Spacebar दबाएँ, लाइन-दर-लाइन नीचे खिसकने के लिए Enter का प्रयोग करें, और किसी भी समय व्यूअर बंद करके प्रॉम्प्ट पर लौटने के लिए q की दबाएँ।

लंबी कंप्रेस्ड फाइल का पेजिनेशन और नेविगेशन

कई आर्काइव्स को क्रमवार देखना और bzless से तुलना

मल्टीपल फाइलों को एक ही सत्र में चेक करने की क्षमता का परीक्षण करने के लिए, हम दो अलग-अलग सर्वर नोड्स के लॉग तैयार करके उन्हें कंप्रेस करते हैं।

दो अलग-अलग नोड लॉग्स जनरेट और कंप्रेस करना

एक से अधिक फाइलों को आर्ग्युमेंट के रूप में पास करके bzmore node_a.log.bz2 node_b.log.bz2 चलाएं।
प्रारंभिक फाइल का अंतिम हिस्सा आते ही नीचे --More--(Next file: node_b.log.bz2) का संकेत दिखाई देगा, जहाँ स्पेस की दबाते ही अगला आर्काइव स्वतः लोड हो जाता है।
हालाँकि, ध्यान देने योग्य एक मुख्य तकनीकी सीमा यह है कि bzmore केवल फॉरवर्ड-ओनली डायरेक्शन में काम करता है। यदि आपके वर्कफ़्लो में रिवर्स स्क्रॉलिंग (ऊपर जाना) या जटिल पैटर्न सर्च की आवश्यकता है, तो अधिक आधुनिक और लचीला bzless यूटिलिटी चुनना बेहतर विकल्प होगा।

क्रमबद्ध तरीके से कई bz2 फाइलों का निरीक्षण

संक्षेप में, bzmore लिनक्स सर्वर पर बिना डिस्क स्पेस खर्च किए कंप्रेस्ड टेक्स्ट डेटा की त्वरित जांच के लिए एक बेहद उपयोगी और हल्का टूल है।
आगामी सिस्टम मेंटेनेंस या आपातकालीन ट्रबलशूटिंग के दौरान इस कमांड को अपनाकर अपने सर्वर प्रबंधन को अधिक तीव्र और उत्पादक बनाएं।