Мм, как Вы знаете о segfault так или иначе?
Существует сообщение журнала ядра в информации о приоритете. Это показывает исполняемое имя без части каталога. На некоторой архитектуре, debug.exception-trace
sysctl должен быть установлен. Некоторая архитектура требует опции времени компиляции и параметра командной строки ядра (например. CONFIG_USER_DEBUG
и user_debug
на руке).
Эврика!
Благодаря комбинации ответов здесь, дискуссии об установке обоев экрана входа в систему и общей дискуссии о запущении X программ от другой консоли, мне наконец удалось решить это.
Я действительно должен установить установку как gdm
пользователь. Но, просто выполнение gsettings set ...
как gdm
перестанет работать из-за ошибки X11. Так, я также должен присоединить команду к X сессиям.
Но, sudo su gdm
не дал мне терминал как gdm
, как я надеялся, таким образом, я в конечном счете создал простой сценарий оболочки для выполнения команд, мне нужно.
setblank.sh:
#!/bin/sh
export DISPLAY=":0"
export XAUTHORITY="$1"
export XAUTHLOCALHOSTNAME="localhost"
gsettings set org.gnome.settings-daemon.plugins.power lid-close-ac-action "blank"
или, в более общем плане (gset.sh
):
#!/bin/sh
export DISPLAY=":0"
export XAUTHORITY="$1"
export XAUTHLOCALHOSTNAME="localhost"
gsettings set $2 $3 $4
После того как у меня было это, я мог назвать его как:
sudo sudo -u gdm gset.sh Xauthority-file org.gnome.settings-daemon.plugins.power lid-close-ac-action "blank"
И это добивается цели!
Одно дополнительное примечание о файле Xauthority: необходимо будет скопировать файл Xauthority для пользователя в файл, который gdm имеет разрешение считать. (Для быстрого и грязного примера: cp $XAUTHORITY /tmp/.Xauthority
и chown gdm:root /tmp/.Xauthority
)
Выполненный sudo su gdm -c 'gsettings …'
(или sudo sudo -u gdm gsettings …
). Команда sudo -u gdm
подсказки Вы для пароля, потому что у Вас нет определенной авторизации к командам выполнения как gdm
через sudo. Но корень может узурпировать любого пользователя, и можно стать корнем, поэтому сначала стать корнем, затем становятся gdm
.
Обратите внимание, что я не знаю при выполнении gsettings
как gdm
пользователь установит предпочтение управления питанием экрана входа в систему. Другая возможность попробовать состояла бы в том, чтобы выполнить команду из сценария в /etc/gdm/Init/
(или везде, где Ваше распределение сохраняет конфигурационные файлы Gdm).
Вы, как предполагается, не входите в систему как gdm пользователь, это - просто удобный способ для ОС, чтобы присвоить владение группы файлов и их связанного чтения, записать, выполнить полномочия.
Вы зарегистрированы консоль или xsession при попытке
gsettings set org.gnome.settings-daemon.plugins.power lid-close-ac-action 'blank'
Я вошел в систему как joeuser, сделал a sudo su -
и затем
gsettings set org.gnome.settings-daemon.plugins.power lid-close-ac-action 'blank'
И полученный никакие ошибки
Или, как корень, можно также отредактировать файл схемы XML, который является значением по умолчанию для всех пользователей
sudo vi /usr/share/glib-2.0/schemas/org.gnome.settings-daemon.plugins.power.gschema.xml
ищите 'lid-close-ac-action' ключ и изменитесь <default>
значение
Я просто обнаружил, что могу выполнить это с dbus-launch
управляйте также, вместо того, чтобы пытаться найти X сессий, к которым можно присоединить.
Я могу обновить настройки Gnome для root
/gdm
/, кто бы ни еще со следующим шаблоном:
sudo sudo -u gdm dbus-launch gsettings set org.gnome.settings-daemon.plugins.power lid-close-ac-action "blank"
/etc/systemd/logind.conf
, (некомментарий и), устанавливаетHandleLidSwitch
установка наignore
. – palswim 26.10.2013, 01:37