내 dconf / gsettings 설치가 손상되었습니다. Ubuntu를 다시 설치하지 않고 어떻게 해결할 수 있습니까?


24

VirtualBox에서 Ubuntu 12.04.1 LTS x64를 실행합니다. 하나의 매우 불행한 잘못된 클릭 (로드 저장 상태 대신 저장된 상태 재설정) 후 매우 성가신 문제가 발생했습니다.

시작시 거의 모든 응용 프로그램 (단일, 시냅스, gedit 등)이 인쇄됩니다.

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

재부팅 후 모든 GUI 설정이 재설정됩니다.

또 다른 증상 :

$ 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

그러나 /usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so존재합니다.


내가 시도한 것 (도움이되지 않음) :

  • sudo apt-get install -f --reinstall dconf-tools libdconf0 libdconf-dbus-1-0 dconf-service
  • 소스에서 dconf-0.5를 빌드 make install하십시오.
  • 빈 사용자 프로필을 만들고 거기서 프로그램을 시작하십시오

현재 Ubuntu 설치를 유지해야하므로 전체 재설치가 옵션이 아닙니다.

어떻게 고칠 수 있습니까?


1
gsettings를 사용하여 실행기 위치를 설정하려고 할 때 동일한 GLib-GIO-Message가 발생했습니다. 포럼의 게시물을 검색하여 ldconfig를 사용하여 동적 링커 구성 재설정을 포함한 제안을 시도했습니다. 그러나 모두 문제를 해결할 수는 없습니다. 그런 다음 Dmitry의 게시물에서 ldd를 사용하여 'gsettings'공유 객체 종속성을 확인하려고했기 때문에 Anaconda 설치에서 사용한 실행 파일을 찾았습니다. / usr / bin의 버전을 사용하여 문제를 해결했습니다.
panna

답변:


23

PATHAnaconda와 같은 Python 환경 관리자와 충돌하는 경우에도 발생할 수 있습니다 .

which gsettings너무 깊어지기 전에 달리십시오 . 그것이 인쇄되지 않고 /usr/bin/gsettings대신에 /home/{username}/anaconda3/bin/gsettings뭔가 .profile/ .bashrc/ .zshrclike가있는 경우 :

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

다음으로 변경하십시오.
export PATH=$PATH:$HOME/anaconda3/bin

대신 종료 이전 받는 prending PATH변수는 문제를 해결할 수 있지만 시스템의 어떤 것을 알고있을 것 bin, 또는 다른 PATH위치, 당신의 우선합니다 anaconda3/bin.

또 다른 옵션은 alias입니다 /usr/bin/gsettings.

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

3
첫 번째 부분 (실행 중 which)은 훌륭한 조언입니다. 두 번째 부분은 그리 많지 않습니다. 일반적으로 자체 설정을 사용하여 환경을 실행하려고합니다. 더 나은 또는 적어도 대안 /usr/bin/gsettings은을 혼란스럽게 하는 대신 명시 적으로 실행하는 것입니다 PATH.
Mad Physicist

네, 전적으로 당신과 동의합니다! 나는 전반적으로 PATH소스가 어떻게 적용 되는지 알고 있어야한다고 생각합니다 .
austince

우분투 18.04에서 내 문제를 해결했습니다. 아주 좋은 답변 +1
Opt

이것이 약간의 견인력을 얻고 있기 때문에, 충돌이 발생하고 python -m [command] [...args]대신 명령을 실행하는 경우 아나콘다를 경로에서 멀리하는 것이 좋은 방법이라고 생각 합니다.
austince

나는 이것을 .bashrc (.profile)에서도 업데이트해야했다.
Barun

11

해결책을 찾았습니다. 에서 /usr/local/lib"그림자"시스템 라이브러리 에 여러 개의 사용자 정의 라이브러리가있는 것으로 보입니다 /usr/lib/x86_64-linux-gnu/.

나는로드 된 동적 라이브러리를 확인하여 그것을 발견했다 libdconfsettings.so.

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

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

동적 라이브러리의 검색 경로 순서 (에서 정의 됨 /etc/ld.so.conf.d/)로 인해 발생했습니다 . 순서는 다음과 같습니다.

  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

예를 들어 자신을 넣어 그래서 만약 libc.so/usr/local/lib대신 기본으로로드됩니다 libc.so에서 /lib/x86_64-linux-gnu.

수정 :

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

2
고맙게도 glib에 대한 패치를 개발하고 실행했기 때문에이 문제가 발생했습니다 sudo make install. sudo make uninstall해당 라이브러리를 제거하여 문제를 해결했습니다./usr/local/lib/
mxmlnkn

1
+1. Glib2 설치 후 비슷한 문제가 발생했습니다.
111

2
Linux Mint는 계속 기본 설정으로 돌아가서 내가 변경 한 내용을 무시하고 다시 체크인했습니다 dconf-editor. 소스에서 glib를 빌드 sudo make install했으며 배경이나 시계 또는 기타 계피 설정을 변경하지 못하게 될 것으로 생각했습니다. 날 미치게 했어 뒤로 링크 : forums.linuxmint.com/viewtopic.php?t=244360&start=20
RyanNerd

이 오류가 발생합니다! mv : '/etc/ld.so.conf.d/libc.conf'를 통계 할 수 없습니다 : 그러한 파일이나 디렉토리가 없으며 Anaconda에있는 파이썬 환경을 제외하고는 / usr / loca / lib에 라이브러리가 없습니다. 그러나 새로운 패키지를 설치할 때 모든 문제가 시작되었습니다. IDE 대신 jupyter-notebook에서 코드를 실행할 때 발생하지 않습니다!
Amir

@Amir ldd 출력이 문제 설명과 동일합니까? 아마도 다른 문제가있을 것입니다.
Dmitry

7

먼저이 명령이 true다음을 반환하는지 확인하십시오 .

gsettings writable com.canonical.Unity.Launcher favorites

그렇지 않은 경우 다음을 사용하여 백엔드를 설치하십시오.

sudo apt-get install dconf-gsettings-backend 

그래도 도움이되지 않으면 다음을 사용하여 프로파일을 재설정하십시오.

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

나중에 재부팅하십시오.


1
첫 번째 명령은 'true'를 반환합니다 ( "memory 'backend 사용"과 함께). 사용자 구성 제거와 관련하여 : 이미 빈 프로필을 만들려고했지만 빈 사용자 계정으로도 문제가 지속됩니다.
Dmitry

dconf-gsettings-backend가 설치되어 있습니까?
Frantique

예, dconf-gsettings-backend가 설치되어 여러 번 다시 설치됩니다.
Dmitry

클릭 수가 잘못 언급되었습니다. 어디서 그랬어?
Frantique

1
답변 주셔서 감사합니다. 나는 해결책을 찾았다 (답으로 게시 됨)
Dmitry

2

우분투 16.10을 사용하여 개인적인 경험을 추가하고 싶었습니다. GNOME 데스크탑 환경을 잠시 사용한 후 Mine이 작동을 멈췄다가 Unity로 전환하여 친구에게보기 흉한 모습 (IMO : D)을 보여주고 GNOME으로 돌아 왔습니다. 그런 다음 "... 메모리 백엔드 사용"을 시작했습니다.

하기

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

나를 위해 고쳤다.


1
데스크톱의 모든 구성이 지워집니다.
Moorepants

1

데비안 제시에서도 같은 경험을했습니다. 그러나 질문자의 해결책 (그는 실패했습니다)은 내 경우에 적합했습니다.

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

이 문제는 나를 죽이고 있었지만 당신은 내 생명을 구했습니다. 감사합니다 : D


0

저장을 수행하는 모듈이 있는지 확인하십시오 (libdconfsettings. / usr / lib / x86_64-linux-gnu / gio / modules / 또는 / usr / lib / gio / modules / 또는 GIO 모듈 저장 위치). 우분투에서 그 파일은 dconf-gsettings-backend 패키지에 의해 제공됩니다; 다시 설치하면 충분합니다 ( sudo aptitude reinstall dconf-gsettings-backend).


0

이것은 나를 위해 일했습니다 (그리고 Dmitry가 제기 한 것과 같은 Python Anaconda 문제처럼 보입니다).

$ export GIO_EXTRA_MODULES=/usr/lib/x86_64-linux-gnu/gio/modules/

(이로 인해 Gsettings, 특히 Gedit의 프린터 설정을 변경할 수 없었습니다.)

출처:

https://github.com/conda-forge/glib-feedstock/issues/19

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.