Хорошо, я думаю, что все это связано с NTP (но кто-то может меня поправить). Я предполагаю, что вы делаете это на виртуальной машине в сети вашего учебного заведения, и предполагаю, что вы пробовали следующее на pid мошеннического процесса.
kill -9 <pid>
Поскольку Kerberos (и почти все протоколы аутентификации / авторизации) полагаются на синхронизированное время, в вашей школе должен быть внутренний NTP-сервер или какой-либо другой сервер времени, лучше всего получить эти имена хостов и настроить демона NTP. указать на них. Вы можете сделать это в /etc/ntpd.conf.
Что касается неудержимого процесса, то это иногда может случиться в Linux. Хотя это бывает редко.
Если процесс блокирует ответ от удаленного хоста, а затем истекает время ожидания, служба переходит в состояние сбоя, но процесс переходит в некорректное состояние, и никакой сигнал уничтожения не завершает его. В этом случае вам необходимо перезагрузить машину.
Причина в том, что процесс, вероятно, перешел в непрерывный сон. Вы можете проверить это, запустив
ps aef | grep <process_name>
и вы заметите, что он, вероятно, имеет статус D.
Удачи в вашем проекте!
если приложение запущено от другого пользователя, вам понадобитсяsudo
:
sudo lsof | grep ".djvu$"
если какое-то расширение файла заглавное, вам нужно -i
в grep
, чтобы игнорировать регистр:
sudo lsof | grep -i ".djvu$"
точка в начале .djvu$
будет соответствовать любому символу (хотя это, вероятно, не приведет к ложным срабатываниям в вашем случае ); вы, вероятно, имеете в виду\.djvu$
Я рекомендую заключать регулярные выражения в одинарные кавычки, а не в двойные, потому что знак доллара имеет особое значение для оболочки Linux:
sudo lsof | grep -i '\.djvu$'
(обновлен с ps
на pgrep
благодаря комментарию qubert)если приложение считывает файлы в память, а затем закрывает его, то lsof
его не увидит, ноps
(список процессов )будет; pgrep
— подходящий инструмент для поиска в запущенных процессах; попробуй:
pgrep --list-full --full --ignore-case '\.djvu'