PID отличается, если начинать с init.d.

Рассматриваемый файл временной метки — /home/jdoe/.local/share/backintime/anacron/1_Main_profile. Пожалуйста, убедитесь, что он доступен для записи. Вы также сохраните, чтобы удалить его. Anacron напишет новый в следующий раз.

Но я также рекомендую обновиться до более новой версии BiT (текущая стабильная версия 1.1.20 ). Некоторое время назад я заменил зависимость anacron на чистый код Python, что сделало это расписание более надежным.

2
04.10.2019, 22:03
1 ответ

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

  1. Вы сами написали сценарий RC?
  2. Правильно ли останавливается aria2cпри запуске /etc/init.d/aria2 stop?(т.е. не оставляя затянувшийся процесс?)

Если да на (1 )и нет на (2 ), это, вероятно, потому, чтоaria2cпородил ребенка для выполнения настоящей работы , и вы не подавили должным образом что в вашем сценарии RC.

Многие программы имеют режим демона , в котором программа, которую вы вызываете, порождает дочерний элемент и демонизирует:

  1. Программа разветвит дочерний процесс.
  2. Дочерний процесс меняет рабочий каталог на /.
  3. Дочерний процесс отключил собственный стандартный ввод/вывод/ошибку.
  4. Дочерний процесс отсоединяется от текущего сеанса.
  5. Родительский процесс (, который вы вызвали ), завершается.
  6. Дочерний процесс остается в фоновом режиме, чтобы выполнять основную работу.

Идентификатор процесса, который вы зафиксировали в файле PID, вероятно, является родительским процессом (, который уже был завершен ).

Обратите внимание, что идентификатор процесса из файла PID также используется при остановке демона(/etc/init.d/aria2 stop). Если это неправильно, например. обратиться к уже -завершенному родительскому процессу, а не к реальному демону — в результате демон не остановится; и вам придется убить его вручную.

Решение будет работать aria2cбез--daemonпараметра , чтобы остановить демонизацию самого себя (, поэтому правильный идентификатор процесса может быть сохранен в файле PID ), но вам придется выполнить демонизировать часть себя в сценарии RC.

П.С. Если вы уже запустили aria2cв своем RC-скрипте с помощью помощника Debian start-stop-daemon, то большая часть задачи уже выполнена за вас; , но вы также должны предоставить опции --backgroundи --chdir /для start-stop-daemon.

0
27.01.2020, 22:24

Теги

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