Сначала рассказ: Я должен переместить сервер (приложения, конфигурации и так далее), и у меня нет подсказки о том, что там, никакие документы, люди в заряде просто отказываются и не оставили информации, таким образом, это - своего рода черный квадрат или черная дыра. Моя задача, переместите то, что находится в том сервере к новому экземпляру, и знайте, как там работают вещи. Проблемой там является некоторое выполнение фонового процесса (см. PS - вывод топора ниже):
ps -ax
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
PID TTY STAT TIME COMMAND
...
841 ? Ss 13:42 python /usr/local/bin/pdoInstaller/
848 ? Ss 0:04 php /usr/local/bin/pdoneVendorBroker/vendorBroker.php
950 ? Ssl 13:00 /usr/bin/mongod --config /etc/mongodb.conf
013 ? S 0:00 CRON
1014 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
1015 ? Ssl 1:02 /usr/sbin/mysqld
1016 ? S 0:02 /usr/bin/php rss_article_loader.php
1065 ? Ssl 0:29 /usr/sbin/nova-agent -q -p /var/run/nova-agent.pid -o /var/log/nova-agent.log -l info /usr/share/nova-agent/nova-agent.py
1219 ? S 0:01 /usr/lib/erlang/erts-5.10.3/bin/epmd -daemon
1222 ? S 0:00 CRON
1223 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
1224 ? S 0:01 /usr/bin/php rss_article_loader.php
1506 ? S 0:00 /bin/sh /usr/sbin/rabbitmq-server
1517 ? Sl 15:59 /usr/lib/erlang/erts-5.10.3/bin/beam.smp -W w -K true -A30 -P 1048576 -- -root /usr/lib/erlang -progname erl -- -home /var/lib/rabbitmq -- -noshell -noinput -sname rabbit@pdone-db-qa -boot /v
1728 ? S 0:00 CRON
1729 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
1730 ? S 0:00 /usr/bin/php rss_article_loader.php
3137 ? Ss 0:04 php /usr/local/bin/shareEventHandler/shareEventHandler.php
3165 ? Ss 0:04 php /usr/local/bin/repToolBroker/repToolBroker.php
3180 ? Ss 0:04 php /usr/local/bin/pdoneLoginProctor/loginProctor.php
3201 ? Ss 0:04 php /usr/local/bin/messageBroker/messageBroker.php
3230 ? Ss 0:04 php /usr/local/bin/emailBroker/emailBroker.php
3250 ? Ss 0:04 php /usr/local/bin/edetailBroker/edetailBroker.php
3270 ? Ss 0:04 php /usr/local/bin/cmeBroker/cmeBroker.php
3921 ? S 0:00 CRON
3922 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
3923 ? S 0:03 /usr/bin/php rss_article_loader.php
4395 ? S 0:00 CRON
4396 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
4397 ? S 0:02 /usr/bin/php rss_article_loader.php
4498 ? S 0:00 CRON
4499 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
4500 ? S 0:01 /usr/bin/php rss_article_loader.php
5781 ? S 0:00 CRON
5782 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
5783 ? S 0:04 /usr/bin/php rss_article_loader.php
7242 ? S 0:00 CRON
7243 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
7244 ? S 0:03 /usr/bin/php rss_article_loader.php
7575 ? S 0:00 CRON
7576 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
7577 ? S 0:02 /usr/bin/php rss_article_loader.php
7705 ? S 0:00 CRON
7706 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
7707 ? S 0:01 /usr/bin/php rss_article_loader.php
9368 ? S 0:00 CRON
9369 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
9370 ? S 0:04 /usr/bin/php rss_article_loader.php
10450 ? S 0:00 CRON
10451 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
10452 ? S 0:03 /usr/bin/php rss_article_loader.php
10771 ? S 0:00 CRON
10772 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
10773 ? S 0:02 /usr/bin/php rss_article_loader.php
10884 ? S 0:00 CRON
10885 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
10886 ? S 0:01 /usr/bin/php rss_article_loader.php
12947 ? S 0:00 CRON
12949 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
12951 ? S 0:04 /usr/bin/php rss_article_loader.php
13573 ? S 0:00 CRON
13574 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
13575 ? S 0:03 /usr/bin/php rss_article_loader.php
13963 ? S 0:00 CRON
13964 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
13965 ? S 0:01 /usr/bin/php rss_article_loader.php
14157 ? S 0:00 CRON
14158 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
14159 ? S 0:00 /usr/bin/php rss_article_loader.php
16083 ? S 0:00 CRON
16084 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
16085 ? S 0:04 /usr/bin/php rss_article_loader.php
17089 ? S 0:00 CRON
17090 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
17091 ? S 0:03 /usr/bin/php rss_article_loader.php
17103 ? S 0:00 CRON
17104 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
17105 ? S 0:01 /usr/bin/php rss_article_loader.php
17553 ? S 0:00 CRON
17554 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
17555 ? S 0:00 /usr/bin/php rss_article_loader.php
19227 ? S 0:00 CRON
19228 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
19229 ? S 0:04 /usr/bin/php rss_article_loader.php
20318 ? S 0:00 CRON
20319 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
20320 ? S 0:01 /usr/bin/php rss_article_loader.php
20375 ? S 0:00 CRON
20376 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
20377 ? S 0:02 /usr/bin/php rss_article_loader.php
20722 ? S 0:00 CRON
20723 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
20724 ? S 0:00 /usr/bin/php rss_article_loader.php
22324 ? S 0:00 CRON
22325 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
22326 ? S 0:03 /usr/bin/php rss_article_loader.php
23549 ? S 0:00 CRON
23550 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
23551 ? S 0:01 /usr/bin/php rss_article_loader.php
23643 ? S 0:00 CRON
23644 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
23645 ? S 0:02 /usr/bin/php rss_article_loader.php
23945 ? S 0:00 CRON
23946 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
23947 ? S 0:00 /usr/bin/php rss_article_loader.php
25875 ? S 0:00 CRON
25876 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
25877 ? S 0:03 /usr/bin/php rss_article_loader.php
26840 ? S 0:00 CRON
26841 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
26842 ? S 0:02 /usr/bin/php rss_article_loader.php
27223 ? S 0:00 CRON
27225 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
27227 ? S 0:01 /usr/bin/php rss_article_loader.php
27538 ? S 0:00 CRON
27539 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
27540 ? S 0:00 /usr/bin/php rss_article_loader.php
29374 ? S 0:00 CRON
29375 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
29376 ? S 0:03 /usr/bin/php rss_article_loader.php
30232 ? S 0:00 CRON
30233 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
30234 ? S 0:02 /usr/bin/php rss_article_loader.php
30444 ? S 0:00 CRON
30445 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
30446 ? S 0:01 /usr/bin/php rss_article_loader.php
30682 ? S 0:00 /usr/sbin/apache2 -k start
30683 ? S 0:00 /usr/sbin/apache2 -k start
30848 ? S 0:00 CRON
30849 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
30850 ? S 0:00 /usr/bin/php rss_article_loader.php
32692 ? S 0:00 CRON
32693 ? Ss 0:00 /bin/sh -c cd /var/www/pdone/ipad_v2/rpc; /usr/bin/php rss_article_loader.php
32694 ? S 0:03 /usr/bin/php rss_article_loader.php
Некоторые пробегают КРОН, у меня есть это определенные, легкий путь, уже но другие как те запущенные значением PHP, например:
3137 ? Ss 0:04 php /usr/local/bin/shareEventHandler/shareEventHandler.php
3165 ? Ss 0:04 php /usr/local/bin/repToolBroker/repToolBroker.php
3180 ? Ss 0:04 php /usr/local/bin/pdoneLoginProctor/loginProctor.php
Я не могу добраться, куда это прибывает из, и я должен знать, где и как они запускаются для установки того же на новом сервере, может кто-либо давать некоторое представление в том, как приняться за решение этой проблемы? Единственной вещью, которую я знаю в данный момент, является использование RabbitMQ тот сценарий, чтобы передать сообщения и сделать некоторые задачи. Я должен определить, где и как фоновый процесс запускается и куда они происходят из. Исходным сервером является Ubuntu, новым является CentOS, не проблема, но просто к вашему сведению, кто-либо может дать мне некоторую справку или идеи?
Обновление
Я нашел a cmeBroker.conf
файл в /usr/local/bin/cmeBroker
каталог и так далее для остальной части их, это - содержание того файла:
description "PDone cmeBroker"
start on runlevel [234]
stop on runlevel [0156]
respawn
exec php /usr/local/bin/cmeBroker/cmeBroker.php
post-start script
PID=`status cmeBroker | egrep -oi '([0-9]+)$' | head -n1`
echo $PID > /var/run/cmeBroker.pid
end script
post-stop script
rm -f /var/run/cmeBroker.pid
end script
Таким образом, это - подсказка на данный момент, но кто ответственное за запуск, или считайте этот файл?
Обновление 2
Как предложено @ivan я был установлен auditd
на сервере Ubuntu и я имею, выполнил эту команду:
auditctl -w /usr/local/bin/repToolBroker/repToolBroker.php -p rwxa
Если я перезапускаю сервер или просто ожидаю и нахожу использование:
ausearch -f /usr/local/bin/repToolBroker/repToolBroker.php
поскольку, кто получил доступ или изменил файл? Это могло показать мне, кто ответственное за запуск те файлы, и выполните их в фоне?
Обновление 3
Используя @julian-sivertsen предложение для поиска файловая система для текстовых строк, которые соответствуют имени файла I благодаря другой справке, которую я получил отсюда, я выполняю эту команду:
sudo grep -r 'shareEventHandler.php\|repToolBroker.php\|loginProctor.php\|messageBroker.php\|emailBroker.php\|edetailBroker.php\|cmeBroker.php' .
И это позволяет мне находить, где файлы назвали. Это - вывод для команды выше:
./init/emailBroker.conf:exec php /usr/local/bin/emailBroker/emailBroker.php
./init/cmeBroker.conf:exec php /usr/local/bin/cmeBroker/cmeBroker.php
./init/pdoneLoginProctor.conf:exec php /usr/local/bin/pdoneLoginProctor/loginProctor.php
./init/edetailBroker.conf:exec php /usr/local/bin/edetailBroker/edetailBroker.php
./init/messageBroker.conf:exec php /usr/local/bin/messageBroker/messageBroker.php
grep: ./init/veevaBroker.conf: No such file or directory
./init/shareEventHandler.conf:exec php /usr/local/bin/shareEventHandler/shareEventHandler.php
./init/repToolBroker.conf:exec php /usr/local/bin/repToolBroker/repToolBroker.php
.conf
файл является символьной ссылкой на файл, который я нашел прежде, и это - то, где все происходит. Теперь у меня есть один остающийся вопрос, что init
папка для? Мой первый раз, имея дело с этим, и мне понравится знать и учиться.
Любой?
Начните с исследования отношений между родительскими и дочерними процессами с помощью такой команды, как ps -AF --forest
. Идентификатор родительского процесса (PPID) будет либо процессом, который породил рассматриваемый процесс, либо 1, если он разветвился или стал бесхозным. Переключение - forest
на PS отображает графическое представление этой взаимосвязи.
Демоны обычно запускаются со скриптами в /etc/rc5.d/, попробуйте поискать там. Также посмотрите файлы для задач cron. Их расположение и настройка различаются в зависимости от дистрибутива Linux, подробности см. В документации по дистрибутиву. Для системы инициализации выскочки можно перечислить все демоны с помощью команды service --status-all
.
Если они не отображаются, вы можете попробовать поискать в файловой системе текстовые строки, соответствующие командам используется для запуска процессов. Например, grep "rss_article_loader \\. Php" -r / usr / etc
покажет все файлы в / usr и / etc, содержащие строку 'rss_article_loader.php'. Обратите внимание, что grep выполняет поиск с использованием регулярных выражений, а не простых текстовых строк.
Мне удалось выявить виновных с помощью подсистемы аудита Linux.
Файлы аудита Linux, чтобы узнать, кто внес изменения в файл
linux - Мониторинг системных вызовов - Обмен стеками информационной безопасности