예를 들어 응용 프로그램을 엽니다.편집자또는그놈 텍스트 편집기터미널 에서는 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
그래서,루트 권한으로 애플리케이션을 열 때 따르는 루트 기본 설정을 변경하는 방법이 있습니까?
나는 성공하지 않고 다음을 시도했습니다.
- 루트로 로그인
su root
하고 애플리케이션을 엽니다. - 다음 명령을 사용하여 애플리케이션을 엽니다
gksu
. - 특정 애플리케이션에 대한 gsettings 스키마의 기본 매개변수를 편집합니다
/usr/share/glib-2.0/schemas/org.gnome.TextEditor.gschema.xml
. - 관리자로 디렉터리를 열고
/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_ADDRES
gedit
sudo
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
.