93 votes

Qu'est-ce que dconf, quelle est sa fonction, et comment l'utiliser ?

Mark Shuttleworth récemment publié sur le blog à propos de la décision d'inclure les bibliothèques Qt dans la version 11.10, avec une suivi de Jono Bacon. Mark déclare que le plus grand défi à l'intégration des applications écrites en Qt dans le système Ubuntu est la non-compatibilité actuelle de Qt avec dconf.

Qu'est-ce que dconf, et quel est son rôle dans Ubuntu ?

105voto

Introduction

Comme d'autres réponses sur ce site en parlent gconf y dconf Je me concentrerai donc sur les outils en ligne de commande tels que gsettings et le gui dconf-editor qui sont utilisés pour accéder au dconf base de données.

Sur le site officiel de GNOME il est noté que

dconf est un système de configuration de bas niveau. Son but principal est de fournir un backend à GSettings sur les plateformes qui n'ont pas encore de système de stockage de configuration.

dconf est un système de configuration simple basé sur des clés. Les clés existent dans une base de données non structurée (mais il est prévu que les clés qui vont logiquement ensemble soient regroupées).

Le fait de disposer de toutes les clés dans un seul format binaire compact permet également d'éviter les problèmes de fragmentation intense que connaît actuellement l'approche de l'arbre de répertoires de fichiers XML.

dconf est optimisé pour les lectures. Typiquement, la lecture d'une clé depuis dconf n'implique aucun appel système et aucun changement de contexte. Les écritures sont moins optimisées -- elles traversent le bus et sont gérées par un "écrivain" -- un service DBus -- de manière ordinaire.

使用方法 gsettings pour visualiser et modifier les paramètres

Une fois qu'on a appris à connaître gsettings cela peut être aussi simple que le gui dconf-editor . Les options peuvent être listées en entrant man gsettings ou de se rendre à la Manpages Ubuntu en ligne .

NOTE : Comme chaque système a des programmes différents installés, vous devrez peut-être remplacer les éléments spécifiques que j'ai choisis par d'autres lorsque vous expérimenterez vous-même, car j'utilise XUbuntu XFce avec de nombreux programmes GNOME.

Pour lister tous les schémas disponibles, entrez

gsettings list-schemas

Pour inclure également toutes les touches, entrez

gsettings list-recursively

Cependant il est généralement plus facile de spécifier ce que vous voulez avec, par exemple,

gsettings list-schemas | grep -i shotwell

La liste est longue ; je l'ai raccourcie :

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

Maintenant, lorsque vous avez trouvé le schéma qui vous intéresse, listez les clés avec

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

Cela renvoie une liste (que j'ai à nouveau raccourcie) :

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

Choisissez-en un et voyez quelle est la valeur actuelle avec

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

Cela renvoie une valeur de true, donc pour l'inverser, utilisez

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

Ce sont trivial exemples, mais montrent essentiellement comment les clés et les valeurs sont identifiées et modifiées à l'aide de gsettings .

Utilisation de dconf-editor pour modifier les paramètres

Le programme GUI, dconf-editor est installé avec dconf-tools en cliquant sur ici ou en exécutant

sudo apt-get install dconf-tools

Ensuite, exécutez-le en entrant dans le terminal ou dans le menu de lancement rapide, dconf-editor .

Comme vous pouvez le voir dans la capture d'écran, tous les différents schémas peuvent être développés sur le côté gauche et la clé appropriée sélectionnée. Il est très simple de naviguer jusqu'à la valeur souhaitée (dans le cas présent, la clé gnome-mplayer préférences). Vous pouvez cliquer sur la case à cocher pour activer une valeur ou ajouter une valeur numérique dans l'une des autres cases. Vous pouvez également effectuer une recherche dans dconf editor avec Ctrl + F raccourci clavier.

enter image description here

Vous pouvez également ajouter un autre journal dire à log-viewer en ajoutant un chemin sous la forme ['/var/log/auth.log', var....'] dans la capture d'écran ci-dessous.

enter image description here

Conclusion

Il existe de nombreuses autres façons utiles de modifier les paramètres avec les deux systèmes gsettings y dconf-editor et ils sont simples à utiliser. Cela vaut la peine de les parcourir pour voir s'il y a des options qui ne sont pas dans les préférences des programmes, car vous pourriez être en mesure de personnaliser votre programme comme vous le souhaitez. Comme l'a récemment montré fossfreedom dans cette question

savoir comment utiliser gsettings o dconf-editor est extrêmement précieux. Voir aussi :

32voto

higuita Points 1981

Pour ceux qui viennent de Windows et qui veulent une réponse simple, dconf est l'équivalent gnome du registre de Windows... un grand arbre binaire où tout programme peut stocker et partager sa configuration.

Ils ont d'abord migré des traditionnelles configurations unix (un fichier texte pour chaque application, chacune avec son propre format) vers un arbre standard de fichiers XML, géré par gconf. Récemment, comme presque personne n'éditait directement ces fichiers XML et que la lecture et l'analyse de nombreux fichiers posaient des problèmes de performance, ils ont migré vers un format binaire en passant de gconf à dconf.

Contrairement au registre de Windows, dconf devrait avoir toutes les entrées de configuration listées, même si elles sont définies sur les valeurs par défaut. Ainsi, il n'y a pas d'entrées cachées, vous pouvez les modifier ou les réinitialiser par défaut facilement.

11voto

Lorin Hochstein Points 11816

Dconf n'est pas spécifique à Ubuntu, c'est la technologie GNOME utilisée pour stocker les paramètres des applications. Pour plus de détails, veuillez lire http://live.gnome.org/dconf

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X