एक सख्त अर्थ में एक द्विआधारी फ़ाइल वह है जो मानव पठनीय पाठ के रूप में एन्कोडेड वर्ण नहीं है। अधिक बोलचाल की भाषा में, "बाइनरी" एक फ़ाइल को संदर्भित करता है जो संकलित, निष्पादन योग्य कोड है, हालांकि फ़ाइल स्वयं निष्पादन योग्य नहीं हो सकती है (अकेले चलाने की क्षमता के लिए अनुमतियों का इतना अधिक उल्लेख नहीं है; कुछ बाइनरी कोड फाइलें जैसे कि लाइब्रेरी हैं; संकलित, लेकिन अनुमतियों की परवाह किए बिना, वे स्वयं द्वारा निष्पादित नहीं किए जा सकते हैं)। एक द्विआधारी जो एक स्टैंडअलोन निष्पादन योग्य के रूप में चलता है, एक "निष्पादन योग्य" है, हालांकि सभी निष्पादन योग्य फाइलें बायनेरिज़ नहीं हैं (और यह अनुमतियों के बारे में है: निष्पादन योग्य पाठ फाइलें जो एक शेल्टर के माध्यम से एक दुभाषिया को आमंत्रित करती #!/bin/sh
हैं जैसे निष्पादन योग्य भी हैं)।
बाइनरी पैकेज क्या है?
एक लिनक्स संदर्भ में एक बाइनरी पैकेज एक एप्लीकेशन पैकेज है जिसमें स्रोत कोड के विपरीत (पूर्व-निर्मित) निष्पादन योग्य होते हैं।
ध्यान दें कि इसका मतलब यह नहीं है कि एक पैकेज फ़ाइल ही एक निष्पादन योग्य है। एक पैकेज फ़ाइल एक संग्रह (एक तरह का .zip
) है जिसमें अन्य फाइलें शामिल हैं, और एक "बाइनरी" पैकेज फ़ाइल वह है जिसमें विशेष रूप से निष्पादनयोग्य शामिल हैं (हालांकि फिर से, निष्पादन योग्य वास्तव में बायनेरिज़ नहीं हैं, और वास्तव में बाइनरी पैकेज का उपयोग किया जा सकता है) संकलित पुस्तकालय जो बाइनरी कोड हैं, लेकिन निष्पादन योग्य नहीं हैं)। हालाँकि, इन फ़ाइलों को एक्सेस करने के लिए पैकेज को अनपैक किया जाना चाहिए।
आमतौर पर पैकेज मैनेजमेंट सिस्टम (जैसे apt / dpkg) द्वारा आपके लिए इसका ध्यान रखा जाता है, जो पैकेज और अनपैक्स को डाउनलोड करता है और आपके लिए बायनेरिज़ को अंदर स्थापित करता है।
बाइनरी पैकेज और डेब पैकेज के बीच अंतर क्या है?
ऐसा नहीं है - .deb
पैकेज बाइनरी पैकेज हैं, हालांकि ऐसे .deb
एस हैं जिनके बजाय स्रोत होते हैं, ये आमतौर पर -src
उनके नाम से जुड़े होते हैं।
मैं कुछ प्रत्यक्ष पैकेज चलाता हूं जो "xyz.linux.run" प्रारूप में है ये पैकेज क्या हैं?
वे आम तौर पर स्वयं निकालने वाले बाइनरी पैकेज हैं; वे बाइनरी पेलोड को शेल स्क्रिप्ट में एम्बेड करके काम करते हैं। "सेल्फ-एक्सट्रैक्टिंग" का मतलब है कि आपको अनपैक करने और उनका उपयोग करने के लिए किसी अन्य एप्लिकेशन (जैसे पैकेज मैनेजर) को इनवॉइस नहीं करना होगा। हालाँकि, चूंकि वे पैकेज मैनेजर के साथ काम नहीं करते हैं, इसलिए उनकी निर्भरता को हल करना एक क्रैसशूट का अधिक होना हो सकता है और इसलिए कुछ ऐसे पैकेज स्टेटिकली लिंक्ड एग्जीक्यूटिव्स का उपयोग करते हैं (उनके पास सभी आवश्यक लाइब्रेरीज़ हैं) जो उपयोग किए जाने पर थोड़ी मेमोरी बर्बाद कर देते हैं। ।