Dconf क्या है, इसका कार्य क्या है, और मैं इसका उपयोग कैसे करूं?


77

मार्क शटलवर्थ ने हाल ही में 11.10 रिलीज में क्यूटी पुस्तकालयों को शामिल करने के निर्णय के बारे में ब्लॉग किया , जिसमें जोनो बेकन का एक फॉलोअप था । मार्क बताता है कि Qt में लिखे गए ऐप्स को बड़े उबंटू प्रणाली में एकीकृत करने की सबसे बड़ी चुनौती Qt की dconf के साथ गैर-संगतता है।

Dconf क्या है, और यह उबंटू में क्या भूमिका निभाता है?


जवाबों:


87

परिचय

इस साइट पर अन्य उत्तरों के रूप में चर्चा करते हैं gconfऔर dconfएक साथ, मैं सिर्फ कमांड-लाइन टूल जैसे कि gsettingsऔर डेटाबेस dconf-editorको एक्सेस करने के लिए उपयोग किए जाने वाले गुई पर चर्चा करने पर ध्यान केंद्रित करूंगा dconf

पर सूक्ति आधिकारिक वेबसाइट में यह पाया गया है कि

dconf एक निम्न-स्तरीय विन्यास प्रणाली है। इसका मुख्य उद्देश्य उन प्लेटफार्मों पर GSettings को एक बैकएंड प्रदान करना है जिनके पास पहले से कॉन्फ़िगरेशन स्टोरेज सिस्टम नहीं है।

dconf एक सरल कुंजी-आधारित कॉन्फ़िगरेशन सिस्टम है। कुंजी एक असंरचित डेटाबेस में मौजूद है (लेकिन इसका उद्देश्य यह है कि कुंजी जो तार्किक रूप से एक साथ होती है, एक साथ समूहीकृत होती है)।

एकल कॉम्पैक्ट बाइनरी प्रारूप में सभी कुंजियाँ होने से ट्री-ऑफ-डाइरेक्टरीज़-ऑफ़-एक्सएमएल-फाइल्स दृष्टिकोण द्वारा अनुभव की जाने वाली तीव्र विखंडन समस्याओं से भी बचा जाता है।

dconf को रीड्स के लिए ऑप्टिमाइज़ किया गया है। आमतौर पर, dconf से एक कुंजी को पढ़ने में शून्य सिस्टम कॉल और शून्य संदर्भ स्विच शामिल होते हैं। राइट्स को कम अनुकूलित किया जाता है - वे बस को पीछे छोड़ते हैं और एक "लेखक" द्वारा नियंत्रित किया जाता है - एक डीबस सेवा - साधारण तरीके से।

gsettingsसेटिंग्स को देखने और बदलने के लिए उपयोग करना

एक बार जब gsettingsयह पता चल जाता है तो यह गुई जितना आसान हो सकता है dconf-editor। विकल्पों को ऑनलाइन दर्ज करके man gsettingsया Ubuntu manpages पर जाकर सूचीबद्ध किया जा सकता है ।

नोट: जैसा कि हर किसी के सिस्टम में अलग-अलग प्रोग्राम इंस्टॉल होते हैं, आपको अपने द्वारा प्रयोग करते समय अलग-अलग आइटमों का चयन करना पड़ सकता है, जिनका मैं खुद प्रयोग कर रहा हूं, क्योंकि मैं काफी सारे गनोम प्रोग्राम्स के साथ XUbuntu XFce का उपयोग कर रहा हूं।

सभी उपलब्ध स्कीमों को सूचीबद्ध करने के लिए, दर्ज करें

gsettings list-schemas

सभी कुंजियों को शामिल करने के लिए, दर्ज करें

gsettings list-recursively

हालांकि , आमतौर पर यह निर्दिष्ट करना आसान है कि आप क्या चाहते हैं, उदाहरण के लिए,

gsettings list-schemas | grep -i shotwell

यह एक लंबी सूची देता है; मैंने इसे छोटा कर दिया है:

org.yorba.shotwell
org.yorba.shotwell.preferences.ui
org.yorba.shotwell.preferences.slideshow
org.yorba.shotwell.plugins.enable-state
org.yorba.shotwell.printing
org.yorba.shotwell.preferences.editing
org.yorba.shotwell.preferences.files

अब जब आपको स्कीमा मिल गया है जिसमें आप रुचि रखते हैं, तो कुंजी को सूचीबद्ध करें

gsettings list-keys org.yorba.shotwell.preferences.ui

यह एक सूची देता है (फिर से मैंने इसे छोटा कर दिया है):

background-color
display-basic-properties
display-extended-properties
display-photo-ratings
display-photo-tags
display-photo-titles
event-photos-sort-ascending
event-photos-sort-by

एक चुनें और देखें कि वर्तमान मूल्य क्या है

gsettings get org.yorba.shotwell.preferences.ui display-photo-tags

यह सही मूल्य देता है, इसलिए इसे उलटने के लिए, उपयोग करें

gsettings set org.yorba.shotwell.preferences.ui display-photo-tags false

ये तुच्छ उदाहरण हैं, लेकिन मूल रूप से दिखाते हैं कि कैसे कुंजी और मूल्यों की पहचान की जाती है और उनके साथ बदल जाती है gsettings

सेटिंग्स बदलने के लिए dconf- एडिटर का उपयोग करना

GUI प्रोग्राम, यहां क्लिक करके या चलाकर dconf- उपकरण पैकेज के dconf-editorसाथ स्थापित किया गया है

sudo apt-get install dconf-tools

फिर इसे टर्मिनल में या क्विक लॉन्च मेनू में दर्ज करके चलाएं dconf-editor

जैसा कि आप स्क्रीनशॉट में देख सकते हैं, सभी विभिन्न स्कीमाओं को बाएं हाथ की तरफ और उचित कुंजी चयनित पर विस्तारित किया जा सकता है। अपने इच्छित मान (इस मामले में gnome-mplayerवरीयताएँ) पर नेविगेट करना बहुत सरल है । आप मान को सक्रिय करने के लिए चेक बॉक्स पर क्लिक कर सकते हैं या किसी अन्य बॉक्स में एक संख्यात्मक मान जोड़ सकते हैं। आप Ctrl+ Fकीबोर्ड शॉर्टकट के साथ dconf एडिटर के भीतर भी खोज कर सकते हैं ।

यहाँ छवि विवरण दर्ज करें

आप log-viewerनीचे स्क्रीनशॉट में फ़ॉर्म में ['/var/log/auth.log', var .... '] को जोड़कर एक और लॉग इन भी कह सकते हैं।

यहाँ छवि विवरण दर्ज करें

निष्कर्ष

वहाँ कई अन्य उपयोगी तरीके हैं जिनसे आप दोनों के साथ सेटिंग ट्वीक कर सकते हैं gsettingsऔर dconf-editorऔर वे उपयोग करने के लिए सरल कर रहे हैं। यह देखने के लिए उनके माध्यम से देखने लायक है कि क्या ऐसे विकल्प हैं जो प्रोग्राम की प्राथमिकताओं में नहीं हैं, क्योंकि आप अपने प्रोग्राम को उसी तरह से अनुकूलित करने में सक्षम हो सकते हैं जिस तरह से आप चाहते हैं। जैसा कि हाल ही में जीवाश्म ने इस सवाल में दिखाया था

यह जानना कि कैसे उपयोग करना है gsettingsया dconf-editorअत्यंत मूल्यवान है। यह सभी देखें:


5
चूंकि प्रोग्राम gsettingsऔर डेटाबेस dconf-editorपर दोनों काम करते हैं dconf, वे एक ही जानकारी क्यों नहीं दिखाते हैं? gsetting12.04 पर स्कीमा com.canonical.Unity.Launcherऔर कुंजी के लिए मान दिखाता है favoritesलेकिन dconf-editorयह भी com.canonical.Unityपूर्ण स्कीमा या कुंजी को अकेले नहीं जाने देता है।
एएच

@ आह: अच्छा सवाल। मैंने इसे यहाँ पूछा है: askubuntu.com/q/243409/2355
फ़्लिम

@ मुझे खेद है कि मैं आपकी टिप्पणी का जवाब देना भूल गया: मैं यूनिटी पर टिप्पणी नहीं कर सकता क्योंकि मैं जुबांटु पर हूं, लेकिन फ्लिम ने एक अलग प्रश्न पूछा है जिसे कुछ अच्छे उत्तर मिलने चाहिए।

4
लेकिन पृथ्वी पर क्या हुआ है क्यूटी, एक जीयूआई टूलकिट के साथ असंगत असंगत?
सलमान वॉन अब्बास

yum install dconf-editorGUI उपकरण को स्थापित करने के लिए RHEL / CentOS उपयोग पर।
मार्क एडिंगटन

26

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

वे पहली बार पारंपरिक यूनिक्स कॉन्फ़िगरेशन (प्रत्येक ऐप के लिए एक टेक्स्ट फ़ाइल, प्रत्येक अपने स्वयं के प्रारूप के साथ) को गोनफ द्वारा प्रबंधित एक्सएमएल फाइलों के एक मानक पेड़ पर माइग्रेट करते हैं। हाल के दिनों में, लगभग किसी ने उन XML फ़ाइलों को सीधे संपादित नहीं किया और MANY फ़ाइलों को पढ़ने और पार्स करने की प्रदर्शन समस्याओं के कारण, उन्होंने gconf से dconf में स्थानांतरित होकर एक द्विआधारी प्रारूप में स्थानांतरित कर दिया।

विंडोज़ रजिस्ट्री के विपरीत, dconf में सभी विन्यास प्रविष्टियाँ होनी चाहिए, भले ही वे डिफ़ॉल्ट मान पर सेट हों। तो कोई छिपी हुई प्रविष्टियाँ नहीं हैं, आप तब बदल सकते हैं या फिर डिफ़ॉल्ट रूप से आसानी से रीसेट कर सकते हैं।


10

dconf उबंटू विशिष्ट नहीं है, यह अनुप्रयोग सेटिंग्स को संग्रहीत करने के लिए उपयोग की जाने वाली GNOME तकनीक है। अधिक जानकारी के लिए कृपया http://live.gnome.org/dconf पढ़ें


डॉन्क और गॉन्फ के बीच क्या संबंध है?
Psusi

10
dconf gconf के लिए GNOME3 प्रतिस्थापन है जिसे कुछ समय के लिए बनाए नहीं रखा गया है। gconf के लिए प्रदर्शन में सुधार लाने की उम्मीद है (एप्लिकेशन स्टार्टअप के लिए प्रासंगिक)।
जोओ पिंटो

1
ऊपर दिए गए मानस की टिप्पणी में सवाल आंशिक रूप से इस सवाल के जवाब में दिया गया है कि " डंके और बाज़ के बारे में विवाद क्यों? "। मुझे यकीन है कि मानुषी इसके बारे में जानती है, सवाल पर टिप्पणी कर रही है, लेकिन मामले में कोई और जानना चाहता है, तो यह है।
फायरफाइटर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.