archlinux修改dconf配置文件

本文参考自:

http://askubuntu.com/questions/72070/how-do-i-change-dconf-keys-without-a-gui-for-a-post-install-script

http://askubuntu.com/questions/45535/how-do-i-clean-up-my-dconf-database

新装的archlinux,又因为误操作导致了一个问题:

安装了一个gnome-shell的拓展---rss-feed.结果在操作的时候,可能是因为这个拓展的缘故或者其它缘故.总之gnome-shell卡死重启了.然后这个插件就出错了.卸了从新装也不行.很是郁闷.无奈对于archlinux又不是很熟.就各种搜集资料.最后终于通过多方的借鉴总结,找到了问题的解决办法.

为什么是多方借鉴总结呢,有一句话说得好,最可怕的事情不是你不会,而是你不知道.我的这个问题也是类似的情况.

最初仅以错误本身去搜索问题.结果一事无成.后来换了一个搜索的方式,搜索gnome插件出错,结果有文章提到dconf和gconf.然后跟着这个线索继续搜索.总算找到了最后的结果.

首先介绍一下dconf文件吧.

dconf文件是一个key-value的小型数据库.

dconf文件位于用户目录的.config/dconf/目录下面.有个叫user的文件,这个就是dconf和dconf-tool读取的源(当然dconf这么多内容,可能这只是其中的一部分,不过我并没有找到其它的内容).dconf属于gnome用来替代gconf的一个新的文件.功能也更强大.

接下来介绍gnome桌面的拓展文件的位置,在用户目录的.local/share/gnome-shell/extensions/目录下.这个目录下的拓展都是用户级别的,还有一个目录在usr/share/gnome-shell/extensions目录,这个是全局级别的.

最后再简单的对gsettings dconf dconf-editor做一个简单的介绍.

gsettings :

这个命令目前已经被dconf替换了(wiki).不过还是有一定用处了.

list-schemas : 列出已安装的信息的分类表

list-keys : 列出指定表中的key

set : 给某个分类下面的key指定一个value

通过这几个命令可以对已经安装的应用进行简单的控制.具体的使用方法可以使用gsettings list-recursively把所有的schema key 打印出来.然后找到自己要修改的内容进行修改.

对于我的这个问题,这种方式并不适合.因为打出来的内容里面并没有我想要的.

dconf :

这个文件更加赤裸裸.直接修改dconf的数据库.

dump : 因为数据库是加密的,所以需要进行解密,这个命令就负责解密.

load : 加载一个明文的文件并生成加密文件

update : 更新数据库文件至全局.

list : 列出dconf数据库的第一层目录

举例 : dconf list /       #注意这个命令的/,并不是我们理解的根目录,而是/home/[user]/.config/dconf这个目录.

我的问题就是通过这个命令解决的.

dconf-tool :

这个命令就是dconf的一个可视化工具.仅仅用来看的,不支持修改.

下面说一下解决方法吧:

方法1 : 试着删除extension文件,然后重新装.结果识别,由此推测出还有信息保存在其它文件中.

方法2 : dconf dump / > user.bak

rm -rf user

alt + f2 然后 输入r后按enter.重启gnome-shell从新生成这个文件.

dconf load / < user.bak

dconf update /

方法2完美的解决了我的问题.不过有个问题需要明确的是,dconf指定的路径必须以/结尾.比如/com这样写就是错的.必须是/com/

关于dconf和gconf,其实我目前还是有些混沌的,不过通过排查问题,理解加深了很多.接下来还是得继续了解才是.

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-05 22:15:58

archlinux修改dconf配置文件的相关文章

windows 7中修改用户配置文件的路径

在windows 7中用户配置文件的默认位置是在c:\users文件夹中.我建议最好在安装完操作系统之后就将用户配置文件的默认位置改变到其他分区. Warning在视图更改注册表之前,请备份好注册表相关键值. 1. 将c:\user文件夹Copy到新的位置(默认情况下 "Default" directory 是隐藏的,请到 Tools > Folder Options > View (tab) > Show Hidden files, folders, and dri

Registrator+Consul+Consul-template+HaProxy实现动态修改Haproty配置文件

实现需求: 用Haproxy做负载均衡,手动方式在配置文件中添加或删除节点服务器信息,比较麻烦. 通过Registrator收集需要注册到Consul作为Haproxy节点服务器的信息,然后注册到Consul key/value. Consul-template去Consul key/value中读取信息,然后自动修改Haproxy配置文件,并重载Haproxy.不需要修改haproxy.cfg. 集群环境: Postil:Mesos集群搭建过程此处省略 关闭selinux和防火墙 setenf

使用现有的虚拟磁盘恢复虚拟机(拷贝修改现有配置文件)

使用现有的虚拟磁盘恢复虚拟机(拷贝修改现有配置文件) 注:这里使用现有的磁盘,通过拷贝修改配置文件重新启动虚拟机,如果该虚拟机的磁盘文件被删除,则虚拟机就无法恢复了 一.搭建测试环境,关闭虚拟机daixuan2,删除配置文件,只剩下磁盘 [[email protected] ~]# virsh list --all Id    名称                         状态 ---------------------------------------------------- 22

Consul+Registrator+Consul-template实现动态修改nginx配置文件

实现需求 用nginx做负载均衡,手动的方式是在upstream中添加或删除后端服务器,比较麻烦. 通过Registrator收集需要注册到Consul作为Nginx后端服务器信息然后注册到Consul key/value.Consul-template去Consul key/value中读取信息,然后自动修改Nginx配置文件并平滑重启Nginx.不需要修改nginx.conf 环境 192.168.0.149 Mesos-master Zookeeper Consul-server Cons

asp.net中为什么修改了配置文件后我们不需要重启IIS

本文转载:http://blog.itpub.net/12639172/viewspace-659819/ 大家知道,asp.net中,如果我们修改了配置文件只要把它保存之后,就会立刻反应到程序中, 并不需要我们重启IIS.甚至我们可以在不停止IIS的情况下,直接替换应用程序下的文件,包括我们 编译好的dll文件等,你需要做的只是替换你变换了的文件而已.那么.net是怎么做到的呢? 这要归功于.net的应用程序域机制,应用程序域是比进程小的程序元单位,也就是说一个 进程中可以包含多个应用程序域.

修改php配置文件find / -name &#39;php.ini&#39;

首先声明我这里是nginx 1. 安装目录:/usr/local/php 开始输入执行代码: #cd /usr/local/src/php-5.3.6/ext/mbstring#/usr/local/php/bin/phpize#./configure --with-php-config=/usr/local/php/bin/php-config#make && make install 接着进入php.ini文件修改配置,有个大坑,网上的教程有些是在这个目录下 :/usr/local/p

Spark添加/更改集群节点需要修改的配置文件

笔记:在配置好了spark后,如果需要添加/删除一个结点需要修改如下配置文件 cd $HADOOP/etc/hadoop 进入hadoop配置文件夹下 修改 slaves,将对应的节点添加/删除 修改hdfs-site.xml , 修改hdfs副本的数量. cd $SPARK_HOME/conf 进入spark配置文件夹下 修改slaves,将对应的节点添加/删除 修改spark-env.sh ,将SPARK_MASTER_IP=192.168.1.*** 这里的IP为主节点的IP.

Python小程序—修改haproxy配置文件

程序2:修改haproxy配置文件  需求: 1 1.查 2 输入:www.oldboy.org 3 获取当前backend下的所有记录 4 5 2.新建 6 输入: 7 arg = { 8 'bakend': 'www.oldboy.org', 9 'record':{ 10 'server': '100.1.7.9', 11 'weight': 20, 12 'maxconn': 30 13 } 14 } 15 16 3.删除 17 输入: 18 arg = { 19 'bakend': '

sublime text3修改默认配置文件是失败的解决方法

如果你修改sublime text3的默认配置文件Preferences.sublime-settings失败,现实的错误信息如下图: 其实根据提示信息就好找问题出在哪里了:权限 要想成功的修改默认配置文件,无非给当前用户一个修改的权限就OK了.首先找到配置文件的目录,我的是在C:\Program Files (x86)\Sublime Text 3\Data\Packages\Default\目录下. 找到Preferences.sublime-settings文件,单击右键,选择属性,选择上