Что делать, если кто-то удаляет файл / var / lock / subsys / httpd.
Как правило, вы можете попросить любой процесс корректно завершить работу, найдя его PID и отправив ему сигнал 15. Попробуйте
www% ps auxww|grep http
apache 311 0.0 0.5 42932 22580 ? S Mar11 0:21 /usr/sbin/httpd
apache 2547 0.0 0.5 42768 22188 ? S Mar12 0:06 /usr/sbin/httpd
root 2669 0.0 0.2 28500 11228 ? Ss Feb15 0:00 /usr/sbin/httpd
[ and many more http processes ]
Тот, который вас интересует, - это родительский элемент, которым владеет root. PID - это второй столбец, в данном случае 2669, поэтому попросите его умереть с
% kill -15 2669
Повторите команду ps, чтобы убедиться, что она исчезла. Если он не пойдет изящно, вы можете заставить его умереть с помощью сигнала 9:
% kill -9 2669
В некоторых UNIX есть другие команды для уничтожения определенных групп процессов или всех процессов с определенным фрагментом текста в имени, но вы не говорите, какую ОС вы используете (хотя использование /var/lock
файл дает понять, что это какая-то UNIX). Пытаться man killall
и вы вполне можете узнать, killall httpd
было бы проще для вас.
Как правило, вам нужно быть root или использовать sudo
команда, чтобы отправить произвольный сигнал произвольному процессу.