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.so
ist 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 install
es - 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
PATH
Dies 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/gsettings
etwas .profile
wie : .bashrc
.zshrc
export PATH=$HOME/anaconda3/bin:$PATH
Ändern Sie es in:
export PATH=$PATH:$HOME/anaconda3/bin
AppEnde stattVorDas Prägen auf die PATH
Variable wird Ihr Problem lösen, Sie müssen sich jedoch darüber im Klaren sein, dass alles in Ihrem System bin
oder an anderen PATH
Orten 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/lib
Ich 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:
- /lib/i386-linux-gnu
- /usr/lib/i386-linux-gnu
- /lib/i686-linux-gnu
- /usr/lib/i686-linux-gnu
- /usr/local/lib
- /lib/x86_64-linux-gnu
- /usr/lib/x86_64-linux-gnu
Wenn Sie also beispielsweise Ihr eigenes einfügen, libc.so
wird /usr/local/lib
es anstelle libc.so
des 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