Я вже досить довгий час бив головою проти цього. Це пов’язано з цим питанням . Я хотів би дізнатися, що саме відбувається, коли я вирішу вимкнути свій Linux-скриньку від GUI. Це здається погано (якщо взагалі) документально зафіксовано.
В ідеалі я сподіваюся на відповідь DE-та OS-агностики. Заперечуючи це, мене цікавить конкретний випадок Mandriva 2010.1 та Debian 6.x (Squeeze) та 7.0 (Wheezy) для всіх Gnome. (Якщо ви звертаєте пильну увагу, так, це Gnome 2 та Gnome 3)
В основному, я хотів би знати, яка команда / сценарій / послідовність скриптів запускається, коли я натискаю "Завершити роботу" або "Перезапустити", щоб я міг змінити їх поведінку. Деякі дописи на форумах, на які я розглядав, пропонують зламати, /etc/polkit-1/*але ця структура каталогів є лише скелетом, наприклад, у вікні Debian (Squeeze).
Хтось може допомогти?
EDIT
Що я спробував поки що
- Замінила
shutdownвиконуваний сценарій власним сценарієм. Це не працює: коли я натискаю,shutdownGnome виходить з системи, не виконуючи сценарій. - Спробував редагувати меню Gnome 2. Немає радості: параметри "Вимкнення", "Вихід" та "Блокування екрана" в редакторі меню не відображаються.
- Поглянув
/usr/share/menu, нічого корисного там немає.
Можливі шляхи вирішення
straceз параметрами графічного інтерфейсу (чи це можливо навіть?)- Дивлячись на
shutdownвихідний код Росії - Дивлячись на
gnome-sessionвихідний код Росії
Оновлення
Відповідно до моїх коментарів до відповіді нижче, я переглянув polkitдії під /usr/share/polkit-1/actions/і знайшов (у файлі org.freedesktop.consolekit.policy) дію під назвою, org.freedesktop.consolekit.system.stop-multiple-usersяка передає повідомлення
System policy prevents stopping the system when other users are logged in
Я думаю (завдяки org.freedesktop.*умові іменування), що це якийсь сигнал, що надсилається до ДМ через D-BUS. Більше того, це повідомлення з’являється при спробі графічного відключення під час входу інших користувачів, тому механізм, який його запускає, повинен бути тим самим механізмом, який спрацьовує, коли з графічного інтерфейсу вибирається «Вимкнути» або «Вимкнути живлення».
Чи може хтось підтвердити / спростувати? Чи є можливість якось перехопити цей сигнал або змінити його?
/etc/init.d/rc.localщоб викликати сценарій при зупинці .