कॉन्फ़िगरेशन फाइल

From Vigyanwiki

कम्प्यूटिंग में, कॉन्फ़िगरेशन फ़ाइलें (सामान्यतः कॉन्फ़िगरेशन फ़ाइलों के रूप में जानी जाती हैं) कम्प्यूटर फाइल होती हैं जिनका उपयोग कुछ कंप्यूटर प्रोग्राम के लिए पैरामीटर (कंप्यूटर प्रोग्रामिंग) और इनिशियलाइज़ेशन (प्रोग्रामिंग) को कॉन्फ़िगर करने के लिए किया जाता है। इनका उपयोग उपयोगकर्ता एप्लीकेशन, सर्वर (कंप्यूटिंग) और ऑपरेटिंग सिस्टम सेटिंग्स के लिए किया जाता है।

इस प्रकार कुछ एप्लिकेशन अपनी कॉन्फ़िगरेशन फ़ाइलों के सिंटेक्स को बनाने, संशोधित करने और सत्यापित करने के लिए उपकरण प्रदान करते हैं; इनमें कभी-कभी ग्राफ़िकल इंटरफ़ेस होते हैं। अन्य प्रोग्रामों के लिए, सिस्टम प्रशासकों से टेक्स्ट एडिटर का उपयोग करके हाथ से फ़ाइलें बनाने और संशोधित करने की अपेक्षा की जा सकती है, जो संभव है क्योंकि कई मानव-संपादन योग्य प्लेन टेक्स्ट फ़ाइलें हैं। सर्वर प्रक्रियाओं और ऑपरेटिंग-सिस्टम सेटिंग्स के लिए, अधिकांशतः कोई मानक उपकरण नहीं होता है, अधिकांशतः ऑपरेटिंग सिस्टम अपने स्वयं के ग्राफिकल इंटरफेस जैसे YaST या debconf प्रदान कर सकते हैं।

कुछ कंप्यूटर प्रोग्राम केवल बूटिंग पर अपनी कॉन्फ़िगरेशन फ़ाइलें पढ़ते हैं। इस प्रकार अन्य लोग समय-समय पर परिवर्तनों के लिए कॉन्फ़िगरेशन फ़ाइलों की जाँच करते हैं। उपयोगकर्ता कुछ प्रोग्रामों को कॉन्फ़िगरेशन फ़ाइलों को फिर से पढ़ने और वर्तमान प्रक्रिया में परिवर्तन प्रयुक्त करने, या वास्तव में अर्बिटरी फ़ाइलों को कॉन्फ़िगरेशन फ़ाइल के रूप में पढ़ने का निर्देश दे सकते हैं। कोई निश्चित मानक या सशक्त कन्वेंशनों नहीं हैं।

जीएनयू जीआरयूबी के लिए कॉन्फ़िगरेशन फ़ाइल संपादित की जा रही है। टिप्पणियाँ ( से प्रारंभ होने वाली पंक्तियाँ)') का उपयोग डोकुमेंटेसन और सेटिंग को अक्षम करने के तरीके दोनों के रूप में किया जाता है।

कॉन्फ़िगरेशन फ़ाइलें और ऑपरेटिंग सिस्टम

यूनिक्स और यूनिक्स जैसे ऑपरेटिंग सिस्टम

इस प्रकार सभी ऑपरेटिंग सिस्टम में यूनिक्स और यूनिक्स जैसे ऑपरेटिंग सिस्टम यूनिक्स जैसे ऑपरेटिंग सिस्टम में कई अलग-अलग कॉन्फ़िगरेशन-फ़ाइल प्रारूप उपस्थित हैं, प्रत्येक एप्लिकेशन या सेवा में संभावित रूप से अद्वितीय प्रारूप होता है, अधिकांशतः उनके मानव-संपादन योग्य सादे में होने की सशक्त कन्वेंशनों है टेक्स्ट, और साधारण विशेषता-मूल्य जोड़ी की-वैल्यू युग्म प्रारूप सामान है। फ़ाइल नेम एक्सटेंशन .cnf, .conf, .cfg, .cf या .आईएनआई अधिकांशतः उपयोग किये जाते हैं.

इस प्रकार लगभग सभी प्रारूप कमेंट (कंप्यूटर प्रोग्रामिंग) की अनुमति देते हैं, ऐसी स्थिति में, कमेंट आउट द्वारा व्यक्तिगत सेटिंग्स को अक्षम किया जा सकता है। अधिकांशतः डिफ़ॉल्ट कॉन्फ़िगरेशन फ़ाइलों में टिप्पणियों के रूप में व्यापक आंतरिक डॉक्यूमेंट होते हैं[1][2] और मैन फ़ाइल का उपयोग सामान्यतः पर उपलब्ध प्रारूप और विकल्पों का डोकुमेंटेसन करने के लिए भी किया जाता है।

सिस्टम-वाइड सॉफ़्टवेयर अधिकांशतः संग्रहीत कॉन्फ़िगरेशन फ़ाइलों का उपयोग करता है /etc, जबकि उपयोगकर्ता एप्लिकेशन अधिकांशतः dotfile का उपयोग करते हैं - होम निर्देशिका में फ़ाइल या निर्देशिका जिसके पहले पूर्ण विराम लगा होता है, जो कैज़ुअल लिस्टिंग से छुपी हुई फ़ाइल और छिपी हुई निर्देशिका यूनिक्स और यूनिक्स जैसे वातावरण में होती है।

कुछ कॉन्फ़िगरेशन फ़ाइलें स्टार्टअप पर कमांड का सेट चलाती हैं। ऐसी फ़ाइलों का होना सामान्य कन्वेंशनों हैrcउनके नाम पर,[3] सामान्यतः प्रोग्राम के नाम का उपयोग करते हुए a(.)rcप्रत्यय जैसे.xinitrc,.vimrc,.bashrc,xsane.rc. अधिक जानकारी के लिए रन कमांड देखें।

इसके विपरीत, आईबीएम का एआईएक्स ऑपरेटिंग सिस्टम अपनी अधिकांश सिस्टम सेटिंग्स को संग्रहीत करने के लिए ऑब्जेक्ट डेटा मैनेजर (ओडीएम) डेटाबेस का उपयोग करता है।

एमएस-डॉस

एमएस-डॉस स्वयं मुख्य रूप से केवल कॉन्फ़िगरेशन फ़ाइल पर निर्भर था, CONFIG.SYS. यह सरल कुंजी-मूल्य जोड़े (उदाहरण के लिए) के साथ प्लेन टेक्स्ट फ़ाइल थी। DEVICEHIGH=C:\DOS\ANSI.SYS) एमएस-डॉस 6 तक, जिसने आईएनआई-फ़ाइल शैली प्रारूप प्रस्तुत किया। नाम की मानक प्लेन टेक्स्ट बैच फ़ाइल भी थी AUTOEXEC.BAT जो बूटिंग पर कमांडों की श्रृंखला चलाता था। इन दोनों फ़ाइलों को विंडोज 98एस तक यथावत् रखा गया था, जो अभी भी एमएस-डॉस के शीर्ष पर चलती थी।

एमएस-डॉस 5 के लिए CONFIG.SYS का उदाहरण:

DOS=HIGH,UMB                                                                                                           
DEVICE=C:\DOS\HIMEM.SYS                                                                                             
DEVICE=C:\DOS\EMM386.EXE RAM                                                                                     
DEVICEHIGH=C:\DOS\ANSI.SYS                                                                                             
FILES=30                                                                                                                   
SHELL=C:\DOS\COMMAND.COM C:\DOS /E:512 /P

डॉस अनुप्रयोगों ने विभिन्न प्रकार की व्यक्तिगत कॉन्फ़िगरेशन फ़ाइलों का उपयोग किया, उनमें से अधिकांश बाइनरी, स्वामित्व और अनडॉक्यूमेंटेड थे - और कोई सामान्य कन्वेंशनों या प्रारूप नहीं थे।

माइक्रोसॉफ्ट विंडोज़

विंडोज रजिस्ट्री डेटा को संपादित करने के लिए REGEDIT एप्लिकेशन का उपयोग किया जा रहा है

ऑपरेटिंग सिस्टम के प्रारंभिक माइक्रोसॉफ़्ट विंडोज़ परिवार ने सादे-टेक्स्ट आईएनआई फ़ाइलों (प्रारंभिकरण से) का अधिक उपयोग किया। ये ऑपरेटिंग सिस्टम और एप्लिकेशन सुविधाओं को कॉन्फ़िगर करने के लिए प्राथमिक तंत्र के रूप में कार्य करते हैं।[4] इनसे पढ़ने और लिखने के लिए एपीआई अभी भी विंडोज़ में उपस्थित हैं, अधिकांशतः 1993 के बाद, माइक्रोसॉफ्ट ने डेवलपर्स को आईएनआई फ़ाइलों का उपयोग करने से दूर करना प्रारंभ कर दिया और विंडोज़ रजिस्ट्री में सेटिंग्स संग्रहीत करने की ओर अग्रसर किया, जो कॉन्फ़िगरेशन सेटिंग्स को संग्रहीत करने के लिए पदानुक्रमित डेटाबेस था, जिसे उस वर्ष प्रस्तुत किया गया था। जैसे की विंडोज़ एनटी.

मैकओएस

संपत्ति सूची मैकओएस (साथ ही आईओएस (एप्पल), नेक्स्टस्टेप, जीएनयूस्टेप और कोको (एपीआई) अनुप्रयोगों में) में मानक कॉन्फ़िगरेशन फ़ाइल स्वरूप है। यह .plist फ़ाइल नाम एक्सटेंशन का उपयोग करता है.

आईबीएम ओएस/2

आईबीएम का ओएस/2 बाइनरी प्रारूप का उपयोग करता है, जिसमें .आईएनआई प्रत्यय भी होता है, अधिकांशतः यह विंडोज़ संस्करणों से भिन्न होता है। इसमें अलिखित कुंजी-मूल्य जोड़े की सूचियों की सूची (डेटा संरचना) सम्मिलित है।[5]

इस प्रकार दो फ़ाइलें सिस्टम-वाइड सेटिंग्स को नियंत्रित करती हैं: जैसे OS2.आईएनआई और OS2SYS.INI। एप्लिकेशन डेवलपर चुन सकते हैं कि उनका उपयोग करना है या अपने एप्लिकेशन के लिए विशिष्ट फ़ाइल बनाना है।

क्रमबद्धता प्रारूप

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

उदाहरणों में सम्मिलित हैं: जेएसओएन, एक्सएमएल, और वाईएएमएल

तुलना

प्रारूप तुलना[6]
प्रारूप औपचारिक विशिष्टताएँ कमेंट्स अनुमति सिंटैक्स टाइपिंग[7][8]
सीयूइ[9] Yes Yes Yes
आईएनआई No Yes No
जेएसओएन Yes[10] No Yes
टीओएमएल Yes[11] Yes Yes
वाईएएमएल Yes[12] Yes Yes
एक्सएमएल Yes[13] Yes No

यह भी देखें

  • .प्रॉपर्टीज, फ़ाइल एक्सटेंशन जो मुख्य रूप से जावा (प्रोग्रामिंग भाषा) में उपयोग किया जाता है
  • होकोन, .प्रॉपर्टीज और जेएसओएन का सुपरसेट
  • आईएनआई फ़ाइल, सामान्य कॉन्फ़िगरेशन फ़ाइल स्वरूप
  • जेएसओएन, जटिल डेटा प्रकारों और डेटा संरचनाओं के समर्थन के साथ
  • रन कमांड, जो आरसी प्रत्यय की ऐतिहासिक उत्पत्ति की व्याख्या करता है
  • टीओएमएल, औपचारिक रूप से निर्दिष्ट कॉन्फ़िगरेशन फ़ाइल स्वरूप
  • वाईएएमएल, जटिल डेटा प्रकारों और संरचनाओं के समर्थन के साथ

संदर्भ

  1. https://opensource.apple.com/source/postfix/postfix-174.2/Postfix.Config/main.cf.default. Archived 2017-08-03 at the Wayback Machine
  2. http://opensource.apple.com/source/apache/apache-769/httpd.conf. Archived 2020-08-01 at the Wayback Machine
  3. "आरसी फ़ाइल". Catb.org. Retrieved 2012-02-29.
  4. Microsoft: Windows NT Workstation Resource Kit.
  5. The OS/2 INI Files by James J. Weinkam.
  6. TOML, TOML, 2023-01-15, retrieved 2023-01-15
  7. Syntax typing refers to the use of syntax to designate data types. In languages that allow syntax typing, type declaration will be syntax-based – e.g. true will be a boolean while "true" will be a string – whereas in languages that do not allow syntax typing it will be semantics-based – e.g. true and "true" will be both recognizable as booleans, while microwave and "microwave" will be both recognizable as strings (this will require the parser to have some prior expectations about the type of a particular field, but this is often the case in configuration files).
  8. Opinions on whether syntax typing in configuration formats is a good or a bad feature vary among authors. with some considering it a disadvantage (see for example What is wrong with TOML § Syntax typing) and others favoring it.
  9. "About | CUE". Retrieved October 6, 2022.
  10. "The JavaScript Object Notation (JSON) Data Interchange Format".
  11. "TOML Specification".
  12. "YAML™ Specification Index".
  13. "Extensible Markup Language (XML) 1.0 (Fifth Edition)".