Meine dconf/gsettings-Installation ist defekt. Wie kann ich das Problem beheben, ohne Ubuntu neu zu installieren?

Meine dconf/gsettings-Installation ist defekt. Wie kann ich das Problem beheben, ohne Ubuntu neu zu installieren?

Ich verwende Ubuntu 12.04.1 LTS x64 in VirtualBox. Nach einem sehr unglücklichen Fehlklick (gespeicherten Zustand zurücksetzen statt gespeicherten Zustand laden) bekam ich ein sehr ärgerliches Problem.

Fast alle Anwendungen (Unity, Synaptic, Gedit usw.) geben beim Start Folgendes aus:

Using the 'memory' GSettings backend.  Your settings will not be saved or shared with other applications.

Und alle GUI-Einstellungen werden nach dem Neustart zurückgesetzt.

Ein weiteres Symptom:

$ GSETTINGS_BACKEND=dconf dconf-editor
(dconf-editor:2353): GLib-GIO-WARNING **: Can't find module 'dconf' specified in GSETTINGS_BACKEND
GLib-GIO-Message: Using the 'memory' GSettings backend.  Your settings will not be saved or shared with other applications

Aber /usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.soist vorhanden.


Was ich versucht habe (und es hat nicht geholfen):

  • sudo apt-get install -f --reinstall dconf-tools libdconf0 libdconf-dbus-1-0 dconf-service
  • Erstellen Sie dconf-0.5 aus den Quellen und make installes
  • Leeres Benutzerprofil anlegen und dort Programme starten

Ich muss die aktuelle Ubuntu-Installation beibehalten, daher ist eine vollständige Neuinstallation für mich keine Option.

Wie kann ich es reparieren?

Antwort1

PATHDies kann auch passieren, wenn Konflikte mit einem Python-Umgebungsmanager wie Anaconda auftreten .

Stellen Sie sicher, dass Sie es ausführen , bevor Sie zu tief eindringen which gsettings. Wenn das nichts ausgibt /usr/bin/gsettings, sondern stattdessen /home/{username}/anaconda3/bin/gsettingsetwas .profilewie : .bashrc.zshrc

export PATH=$HOME/anaconda3/bin:$PATH

Ändern Sie es in:
export PATH=$PATH:$HOME/anaconda3/bin

AppEnde stattVorDas Prägen auf die PATHVariable wird Ihr Problem lösen, Sie müssen sich jedoch darüber im Klaren sein, dass alles in Ihrem System binoder an anderen PATHOrten Ihre ersetzt anaconda3/bin.

Eine andere Möglichkeit wäre, den Alias ​​zu verwenden /usr/bin/gsettings:

alias sys-gsettings=/usr/bin/gsettings
sys-gsettings get org.gnome.todo view

Antwort2

/usr/local/libIch habe die Lösung gefunden. Es scheint, dass ich in diesen „überschatteten“ Systembibliotheken mehrere benutzerdefinierte Bibliotheken von bekommen habe /usr/lib/x86_64-linux-gnu/.

Ich habe es entdeckt, als ich die dynamischen Bibliotheken überprüft habe, die geladen wurden von libdconfsettings.so:

ldd /usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so

...
<  several dynamic libraries from /usr/local/lib >
...

Dies geschah aufgrund der Reihenfolge der Suchpfade für dynamische Bibliotheken (definiert in /etc/ld.so.conf.d/). Die Reihenfolge war die folgende:

  1. /lib/i386-linux-gnu
  2. /usr/lib/i386-linux-gnu
  3. /lib/i686-linux-gnu
  4. /usr/lib/i686-linux-gnu
  5. /usr/local/lib
  6. /lib/x86_64-linux-gnu
  7. /usr/lib/x86_64-linux-gnu

Wenn Sie also beispielsweise Ihr eigenes einfügen, libc.sowird /usr/local/libes anstelle libc.sodes Standardwerts geladen /lib/x86_64-linux-gnu.

Die Reparatur:

sudo mv /etc/ld.so.conf.d/libc.conf /etc/ld.so.conf.d/xuserlocal.conf
sudo ldconfig
sudo reboot

Antwort3

Überprüfen Sie zunächst, ob dieser Befehl Folgendes zurückgibt true:

gsettings writable com.canonical.Unity.Launcher favorites

Wenn nicht, installieren Sie das Backend mit:

sudo apt-get install dconf-gsettings-backend 

Wenn das auch nicht hilft, setzen Sie Ihr Profil zurück mit:

rm -rf ~/.gnome ~/.gnome2 ~/.gconf ~/.gconfd ~/.metacity .config/dconf/*

Anschließend Neustart durchführen.

Antwort4

Ich habe dasselbe in Debian Jessie erlebt. Aber die Lösung des Fragestellers (er war damit gescheitert) war für meinen Fall angemessen:

 sudo apt-get install -f --reinstall  dconf-tools libdconf0 libdconf-dbus-1-0 dconf-service

Dieses Problem hat mich umgebracht, aber Sie haben mir das Leben gerettet, Danke :D

verwandte Informationen