Dconf / gsettings kurulumum bozuldu. Ubuntu yeniden yüklemeden nasıl düzeltebilirim?


24

VirtualBox içerisinde Ubuntu 12.04.1 LTS x64 kullanıyorum. Çok talihsiz bir yanlış kullanımdan sonra (yük kaydedilmiş durum yerine kaydedilen durumu sıfırla) çok can sıkıcı bir sorunla karşılaştım.

Hemen hemen tüm uygulamalar (birlik, sinaptik, gedit vb.) Başlangıçta yazdırılıyor:

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

Ve tüm GUI ayarları yeniden başlatıldıktan sonra sıfırlanır.

Başka bir semptom:

$ 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

Ama /usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.sovar.


Ne denedim (ve yardımı olmadı):

  • sudo apt-get install -f --reinstall dconf-tools libdconf0 libdconf-dbus-1-0 dconf-service
  • Kaynaklardan dconf-0.5 oluşturun ve make installbu
  • Boş kullanıcı profili oluşturun ve oradaki programları başlatın

Mevcut Ubuntu kurulumunu sürdürmem gerekiyor, bu yüzden tam bir yeniden yükleme benim için bir seçenek değil.

Nasıl düzeltebilirim?


1
Başlatıcı konumunu ayarlamak için gsettings kullanmaya çalışırken aynı GLib-GIO-Mesajıyla da karşılaştım. Forumun yazılarını araştırdım ve burada, ldconfig kullanarak dinamik bağlayıcı yapılandırmasını sıfırlamak da dahil olmak üzere önerileri denedim. Ancak, herkes sorunu çözemedi. Ardından Dmitry'in görevi, 'gsettings' paylaşılan nesne bağımlılıklarını kontrol etmek için ldd kullanmayı düşünmeme neden oldu, bu da kullandığım yürütülebilir dosyayı bulmamın Anaconda'nın kurulumundan geldiğini buldu. / Usr / bin içindeki sürümü kullanarak sorunu çözdü.
panna

Yanıtlar:


23

Bu, PATHAnaconda gibi bir Python çevre yöneticisi ile çatışmalarınız olduğunda da olabilir .

which gsettingsÇok derinleşmeden kaçtığınızdan emin olun . Bu yazmıyorsa /usr/bin/gsettingsve onun yerine /home/{username}/anaconda3/bin/gsettingssizin gibi bir şeyin muhtemelen .profile/ .bashrc/ .zshrclikeu varsa:

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

Şuna değiştir:
export PATH=$PATH:$HOME/anaconda3/bin

App yerine biten öncesi için prending PATHdeğişkeni sorunu çözmek, ancak sisteminizde şey farkında olacak bin, ya da diğer PATHyerlerde, senin yerini alacaktır anaconda3/bin.

Diğer bir seçenek ise takma ad olacaktır /usr/bin/gsettings:

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

3
İlk bölüm (koşma which) mükemmel bir tavsiye. İkinci kısım, çok değil. Genelde ortamınızın kendi kurulumunu kullanarak çalışmasını istersiniz. Daha iyi veya en azından alternatif bir çözüm /usr/bin/gsettings, uğraşmak yerine açıkça çalıştırılması olabilir PATH.
Mad Physicist

Evet, sana tamamen katılıyorum! Genel olarak, genel olarak PATHkaynağın / uygulamanın nasıl olduğunun farkında olmalısınız .
austince

Ubuntu'daki sorunumu çözdü 18.04 çok güzel cevap +1
Opt

Bu biraz çekişme yarattığından, çatışmalar yaşıyorsanız ve bununla komutları python -m [command] [...args]kullanıyorsanız anaconda'yı yolunuzdan uzak tutmak için başka bir iyi yol olabilir .
austince

Bunu .bashrc sayfamda da güncellemek zorunda kaldım (.profile).
Barun

11

Çözümü buldum. Öyle görünüyor ki /usr/local/lib"gölgeli" sistem kütüphanelerinde özel olarak oluşturulmuş bazı kütüphaneler var /usr/lib/x86_64-linux-gnu/.

Tarafından yüklenen dinamik kütüphaneleri kontrol ederek keşfettim libdconfsettings.so:

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

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

Dinamik kitaplıklar için arama yollarının sırası nedeniyle oldu (içinde tanımlandı /etc/ld.so.conf.d/). Sipariş şuydu:

  1. / Lib / i386 Linux-antilop
  2. / Usr / lib / i386 Linux-antilop
  3. / Lib / i686 Linux-antilop
  4. / Usr / lib / i686 Linux-antilop
  5. / Usr / local / lib
  6. / Lib / x86_64-Linux-antilop
  7. / Usr / lib / x86_64-Linux-antilop

Örneğin kendi koyarsanız Yani libc.soiçine /usr/local/libyerine temerrüt yüklenir libc.sodan /lib/x86_64-linux-gnu.

Çözüm:

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

2
Teşekkürler, bu sorunu da yaşadım, çünkü glib için bir yama geliştirmeye çalıştım ve idam ettim sudo make install. sudo make uninstallsorunu bu kütüphaneleri kaldırarak çözdü/usr/local/lib/
mxmlnkn

1
+1. Glib2'nin kurulmasından sonra da benzer bir sorunu çözdüm.
111

2
Linux Mint varsayılan ayarlara dönmeye devam etti ve yaptığım değişikliklere saygı göstermediğimden ve tekrar kontrol ettiğimden dconf-editor. Kaynaktan glib sudo make installyaptığımı ve hiçbir fikrim olmadığını, arkaplanımı, saatimi veya diğer tarçın ayarlarını değiştirmeme izin vermeyeceği ortaya çıktı. Beni deli ediyordu. Geri bağlantı: forums.linuxmint.com/viewtopic.php?t=244360&start=20
RyanNerd 08

bu hatayı alıyorum! mv: '/etc/ld.so.conf.d/libc.conf' statüsünde olamaz ama yeni bir paket kurduğumda bütün sorun başladı. ve kodumu IDE yerine jupyter-notebook üzerinde çalıştırdığımda gerçekleşmiyor!
Amir

@Amir Ldd çıkışı, konu açıklamasındakiyle aynı mı? Muhtemelen başka bir sorunun var.
Dmitry,

7

İlk önce bu komutun dönüp dönmediğini kontrol edin true:

gsettings writable com.canonical.Unity.Launcher favorites

Değilse, arka ucu aşağıdakilerle takın:

sudo apt-get install dconf-gsettings-backend 

Bu da yardımcı olmazsa, profilinizi şu şekilde sıfırlayın:

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

Daha sonra yeniden başlat.


1
ilk komut 'true' değerini döndürür ("memory 'backend'i kullanmakla birlikte). Kullanıcı yapılandırmasının kaldırılmasıyla ilgili: Zaten boş bir profil oluşturmaya çalıştım ve sorun boş kullanıcı hesabıyla bile devam ediyor.
Dmitry

Dconf-gsettings-backend'iniz kurulu mu?
Frantique

Evet, dconf-gsettings-backend yüklü (ve birkaç kez yeniden yüklendi).
Dmitry

Bir yanlış işaretten bahsettin. Bu nerede oldu?
Frantique

1
Cevabınız için teşekkürler. Çözümü buldum (cevap olarak gönderildi)
Dmitry

2

Bu konudaki kişisel deneyimimi ubuntu 16.10 ile eklemek istedim. Mine, bir süre GNOME masaüstü ortamını kullandıktan sonra çalışmayı bıraktı ve bir arkadaşa ne kadar kötü göründüğünü göstermek için Birlik'e geçti (IMO: D) ve tekrar GNOME'a geri döndü. Sonra "... bellek arka ucunu kullanarak ..." almaya başladım.

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

Benim için düzeltildi.


1
Bunun masaüstünüz için tüm yapılandırmaları sildiğini unutmayın.
moorepants 20:17

1

Aynı şeyi Debian Jessie'de de yaşadım. Ancak, sorgulayıcının çözümü (bu konuda başarısız olmuştu) davam için uygun oldu:

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

Bu sorun beni öldürüyordu ama sen hayatımı kurtardın, Teşekkürler: D


0

Tasarruf yapan bir modüle sahip olduğunuzdan emin olun (libdconfsettings.so / usr / lib / x86_64-linux-gnu / gio / modüllerinde / veya / usr / lib / gio / modüllerinde / veya GIO modüllerinizi nerede saklıyorsanız). Ubuntu'da bu dosya dconf-gsettings-backend paketi tarafından sağlanır; bunu tekrar yüklemek yeterli olacaktır ( sudo aptitude reinstall dconf-gsettings-backend).


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.