Что заставляет Наутилус перезапускаться всякий раз, когда я его убиваю?

В htop я убиваю Наутилуса, и через одну секунду он возвращается с новым PID!

Перезапущенный Nautilus отображается в списке «Процессы», но не имеет графического интерфейса, пока я не запускаю Nautilus вручную ... Я слышал упоминание о том, что Nautilus работает в режиме локстепа с рабочим столом ... может, в этом причина (? ).

Есть ли какая-нибудь программа «сторожевого таймера», которая следит за некоторыми дистрибутивными программами? Наблюдение за Nautilus не похоже на проблему с ядром Linux, поэтому мне просто интересно, что здесь происходит?

28
задан 30 December 2010 в 06:16

6 ответов

Gnome использует Менеджер сеансов (gnome-session) отслеживать то, что это должно сделать. Это ответственно за перевод в рабочее состояние целой сессии, всех подпроцессов, восстановления состояния и сохранения его, когда Вы выходите из системы.

GNOME обеспечивает инструменты, чтобы позволить Вашему приложению работать гладко от сессии до сессии. Пользователи могут выйти из системы с запущенными приложениями и восстанавливать те приложения полностью, когда они входят в. – от Библиотеки документации Gnome

Среди прочего менеджер сеансов пытается сохранить, это - экземпляр выполнения Наутилуса. Наутилус должен зарегистрироваться в менеджере сеансов для того - который он делает по умолчанию; естественно, существует параметр командной строки для отключения его:

nautilus --sm-disable

Можно уничтожить рабочий процесс Наутилуса окончательно путем выполнения:

killall -9 nautilus

20
ответ дан 30 December 2010 в 06:16

Как уже упоминалось, gnome-session автоматически запускает процесс nautilus. Это также относится к gnome-panel и gnome-wm (что, в свою очередь, запускает диспетчер окон, настроенный пользователем, обычно compiz или metacity).

Это поведение можно настроить с помощью клавиш desktop > gnome > session > required_components gconf.

required_components gconf keys

Редактирование этих значений может быть полезно, если вы хотите, например, запустить без панели GNOME и использовать только Docky или AWN.

0
ответ дан 30 December 2010 в 06:16

gnome-session отвечает за возрождение наутилуса. Как его родительский элемент в дереве процессов, нет другого процесса, который мог бы его возродить.

ps -eaH показывает вам иерархическое дерево процессов, приведенное здесь:

    1 ?        00:00:00 init
 1113 ?        00:00:00   gdm-binary
11391 ?        00:00:00     gdm-simple-slav
11396 tty8     00:00:13       Xorg
11465 ?        00:00:00       gdm-session-wor
11629 ?        00:00:00         gnome-session
11746 ?        00:00:02           nautilus
0
ответ дан 30 December 2010 в 06:16

Chipaca & amp; andrewsomething оба близки ...:)

Клавиша /desktop/gnome/session/required_components_list перечисляет «компоненты», которые должны контролироваться с помощью gnome-session, и автоматически перезапускаются при выходе. Значением по умолчанию для GNOME 2 является что-то вроде [windowmanager,panel,filemanager].

Если вы хотите предотвратить запуск (пере) запуск этого механизма наутилусом (или любым другим «компонентом файлового менеджера», который вы настроили), вы можете изменить значение на [windowmanager,panel]. (Вы все еще можете запустить его во время входа в систему, добавив его в список программ запуска сеанса, конечно, но он больше не будет перезапущен автоматически.)

Какое приложение (с какими параметрами командной строки) получает Запущенный для каждого компонента определяется под /desktop/gnome/session/required_components в ключе с именем компонента. Возможно, здесь указано больше компонентов, чем используется клавишей /desktop/gnome/session/required_components_list.

Теперь, в случае nautilus, по умолчанию, когда он еще не запущен, он запускается в фоновом режиме, а если установлена ​​клавиша /apps/nautilus/preferences/show_desktop, он также показывает рабочий стол. Также возможно сказать, что nautilus ведет себя иначе с параметрами командной строки.

0
ответ дан 30 December 2010 в 06:16

Наутилус перезагружается, потому что он у вас нарисован на рабочем столе. Введите

gconftool-2 --type bool --set /apps/nautilus/preferences/show_desktop False

в терминал, чтобы он прекратил это делать, и он не должен возвращаться после убийства.

0
ответ дан 30 December 2010 в 06:16
Всего

:

gconftool-2 -s -t bool /desktop/gnome/background/draw_background false
gconftool-2 -s -t bool /apps/nautilus/preferences/show_desktop false

и

sudo gedit /usr/share/applications/nautilus.desktop

изменяются на:

X-GNOME-AutoRestart = false

(найдено это по адресу: https://bbs.archlinux.org/viewtopic.php?id=119254 )

, вот и все ...

0
ответ дан 30 December 2010 в 06:16

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

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