Назад | Перейти на главную страницу

Как мне узнать, что заставляет init (8) запускать процесс?

Я установил Google Desktop для Linux и хочу предотвратить его запуск без обязательного удаления всех его файлов. Мне удалось найти и отключить файл в /etc/cron.hourly, но gdl_box все еще запускается процессом 1:

1  5199  5199  5199 ?           -1 Ss   32074   0:01 /opt/google/desktop/bin/gdl_box

Я нащупал gdl в каждом файле под /etc и подозреваемых не было. Кажется, в /etc/init.d или в /etc/rc*.d каталоги. Как мне найти и убить этого злого демона? Точнее, как мне узнать, что вызывает его появление, и вообще предотвратить его появление?

Я убил gdl_box снова и снова, но без перезагрузки или перезапуска X, что-то в системе продолжает возрождаться. Я хотел бы узнать что и прекратить.


РЕДАКТИРОВАТЬ

ОК, в конце концов я заменил gdl_box с двоичным файлом, который запускался ps afwj чтобы я мог сказать, кто его запустил, прежде чем он был принят init. Представьте себе мое смущение, когда я обнаружил, что он запущен с моего .profile. Мне все еще хотелось бы узнать, как лучше это обнаружить, но я принял ответ, в котором указывалось на принятие init (спасибо Томасу), что, по крайней мере, не позволило мне заглянуть не под тот фонарь.

Я предполагаю, что первый столбец в выводе ps, который вы показываете, является родительским pid (PPID). Если это так, вероятно, он не порожден init (если это то, что заставило вас в это поверить), но в обычном стиле демона unix он выполняет двойную вилку, что приводит к получению родительского pid 1. Это был сирота, и init был принят Это.

Как его найти и убить? Эээ ... это прямо там, чего ты не находишь?

Рабочий стол Google запускается (по крайней мере, в моей системе RHEL5):

/etc/xdg/autostart/gdl_box.desktop

Некоторые версии ps поддержать --forest или f флаг, чтобы показать дерево отношений между процессами. Если в вашей версии этого нет, проверьте pstree, автономный пакет, делающий то же самое. Это может помочь в таких случаях.

Как насчет бега

find / var / spool / cron -type f | xargs grep gdl

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