루트의 그놈 응용 프로그램 기본 설정을 변경하는 방법은 무엇입니까?

루트의 그놈 응용 프로그램 기본 설정을 변경하는 방법은 무엇입니까?

예를 들어 응용 프로그램을 엽니다.편집자또는그놈 텍스트 편집기터미널 에서는 sudo애플리케이션이 기본 기본 설정으로 열리며 이러한 설정을 변경할 수 없습니다. 그러나 관리자로서 무시되는 것처럼 보이는 다양한 기본 설정을 변경합니다.

비교를 위한 스크린샷은 다음과 같습니다. 루트 대 사용자

사용자 기본 설정을 무시하려면 루트를 사용하세요.

sudo로 애플리케이션을 연 후 기본 설정을 변경하려고 하면 터미널에 다음과 같은 오류/경고가 표시됩니다( tedit심볼릭 링크가 가리키는 위치 gnome-text-editor).

(tedit:37067): dconf-WARNING **: 11:36:56.149: failed to commit changes to dconf: Error spawning command line “dbus-launch --autolaunch=cca92021290f49f5b00d396a

그래서,루트 권한으로 애플리케이션을 열 때 따르는 루트 기본 설정을 변경하는 방법이 있습니까?

나는 성공하지 않고 다음을 시도했습니다.

  1. 루트로 로그인 su root하고 애플리케이션을 엽니다.
  2. 다음 명령을 사용하여 애플리케이션을 엽니다 gksu.
  3. 특정 애플리케이션에 대한 gsettings 스키마의 기본 매개변수를 편집합니다 /usr/share/glib-2.0/schemas/org.gnome.TextEditor.gschema.xml.
  4. 관리자로 디렉터리를 열고 /usr/share/applications.desktop 파일을 사용하여 애플리케이션을 시작합니다.

편집 1

sudo -E방금 사용자 환경에서 루트를 사용하여 파일을 여는 해결 방법을 찾았습니다 . 예를 들면 다음과 같습니다.

sudo -E gnome-text-editor [path-to-file]

하지만 루트 기본 설정을 영구적으로 변경하는 쉬운 방법이 있는지 여전히 알고 싶습니다.


편집 2

예상한 방법(3), 즉 스키마의 기본값을 변경하는 방법을 우연히 발견했습니다. 작동하지만 다음을 사용하여 다시 컴파일해야 합니다.

sudo glib-compile-schemas /usr/share/glib-2.0/schemas/

그러나 이것은 실제 답변이 아닌 또 다른 해결 방법이라고 생각합니다.

답변1

설정에 따라 다릅니다... 이 경우( gedit기본 설정) 설정은 일반적으로 바이너리 파일 dconf(해당 사용자의 )에 저장됩니다. XDG_CONFIG_HOME그러나 호출할 때 a에 액세스할 수 없기 때문에 dconf(이것이 경고 메시지를 받는 이유입니다) 작동하지 않습니다. 사람들은 일반적으로 주소 가져오기, 주소 내보내기 등을 통해 문제를 해결하려고 합니다. 제 생각에 가장 직접적인 방법은 다음과 같습니다.DBUS_SESSION_BUS_ADDRESgeditsudo
dbus-run-session예를 들어 gedit색 구성표를 다음으로 설정합니다.탠 껍질루트의 경우 다음을 실행할 수 있습니다.

sudo -i -u root sh -c 'exec dbus-run-session -- gsettings set org.gnome.gedit.preferences.editor scheme "solarized-dark"'

아니면 직접 열어보세요gedit

sudo -i -u root sh -c 'exec dbus-run-session -- gedit'

필요에 따라 사용자 정의하면 다음 실행을 위해 설정이 저장됩니다 sudo gedit.

관련 정보