«Gedit» не запускается от имени пользователя root: «CRITICAL: file log.c…» - ошибка (нет проблем с gksu!)

Я использую Ubuntu 14.10 с XFCE. Уже через несколько недель gedit больше не запускается как root (с gksu gedit).

Запуск с моего обычного аккаунта работает без проблем. Проблема не в gksu, а в том же, что и sudo (я знаю, не рекомендуется для GUI) или gksudo. pkexec дает другую ошибку. Тем не менее, другие программы (например, eog) работают нормально с gksu!

Когда я запускаю gksu gedit, я получаю запрос пароля gksu, и после ввода я вижу кружащий курсор мыши на полминуты, но окно gedit не открывается. Нет вывода терминала.

Запуск pkexec gedit в терминале дает:

bytecommander@AlkaliMetal:~$ pkexec gedit
gdk_mir_display_open
Failed to connect to Mir: Failed to connect to server socket: File or Path not found.

(gedit:3935): Gtk-WARNING **: cannot open display: 
bytecommander@AlkaliMetal:~$ 

Запуск gedit в корневом терминале дает:

root@AlkaliMetal:/home/bytecommander# gedit

(gedit:24281): dconf-WARNING **: failed to commit changes to dconf: Failed to execute child process "dbus-launch" (No such file or directory)

** (gedit:24281): CRITICAL **: file log.c: line 975: unexpected error: Failed to execute child process "dbus-launch" (No such file or directory) (g-exec-error-quark, 8)

^C
root@AlkaliMetal:/home/bytecommander#

(Команда не завершается. Я прервал через некоторое время с помощью Ctrl + C )

Я искал файл log.c из сообщения об ошибке. Единственный, кого я нашел, был /usr/share/gettext/intl/log.c. Странно, однако, что этот файл содержит только 126 строк, поэтому упомянутая выше строка (строка 975) не существует! Должен ли я разместить контент? Это похоже на нормальный C-код.

Я тоже уже удалил /root/.config/gedit/, но ничего не изменилось.

Запуск dconf-editor из корневого терминала и проверка ключей в dconf:/org/gnome/gedit не показали никаких подозрительных (мне!) Значений. Я могу опубликовать некоторые ключи, если вы скажете мне, как их сбросить. Я знаю только, как использовать инструмент с графическим интерфейсом.

Что мне нужно сделать, чтобы восстановить настройки root-dconf для gedit (если это проблема)? Или я ошибаюсь, и у проблемы есть другая причина?
Может быть, вы даже можете догадаться, что все испортило, чтобы я мог избежать этого в будущем. Спасибо!

4
задан 7 April 2015 в 06:16

1 ответ

Мне так или иначе удалось решить мою проблему и вернуть gedit для работы, даже для корня.

то, Что я сделал, было

  1. sudo apt-get install --reinstall dbus dbus-x11

    для переустановки некоторых dbus-пакетов который я, вероятно, испорченный некоторое время назад путем выполнения make uninstall на пакете, содержащем dbus части.

  2. dconf dump /org/gnome/gedit/ > /home/bytecommander/dconf-gedit.dump сопровождаемый путем открытия корневой оболочки с sudo -i и как корень:
    dconf load /org/gnome/gedit/ < /home/bytecommander/dconf-gedit.dump

    для копирования рабочих dconf-настроек для gedit от моего обычного пользователя представляют к dconf базе данных корня.

После этого это работает как очарование. Даже dconf-предупреждения о dbus-запуске исчезли.

4
ответ дан 7 April 2015 в 06:16

Другие вопросы по тегам:

Похожие вопросы: