Я недавно обновил elasticsearch-куратор с 3.4.1 до 4.1.0. Я также создал новый файл конфигурации и файлы действий, необходимые для того, чтобы делать то же самое, что я делал с 3.4.1. Что происходит, так это то, что, когда cron запускает скрипты, он отображается как 3.4.1. Если я sudo запускаю скрипт вручную, он отображается как 4.1.0Неверное описание куратора между оболочкой и cron
Я удалил apt-пакет и перенесен в пакет pip. Это единственное, что я могу думать о том, что это может быть причиной этого.
Вот сценарий, который будет работать с cron.daily (временно переехал в cron.hourly для тестирования, который безответственно был установлен, чтобы запустить каждую минуту):
#!/bin/sh
/usr/local/bin/curator --version
/usr/local/bin/curator --config /etc/curator/curator.yml /etc/curator/actions/01-nightly-close
/usr/local/bin/curator --config /etc/curator/curator.yml /etc/curator/actions/02-nightly-optimize
я в состоянии запустить скрипт а Судо и номер версии показывает 4.1.0:
/etc/cron.hourly/curator
curator, version 4.1.0
Если я позволю хрон выполнить задание, он показывает версию 3.4.1:
/etc/cron.hourly/curator
curator, version 3.4.1
Error: no such option: --config
Error: no such option: --config
run-parts: /etc/cron.hourly/curator exited with return code 2
Кроме того, когда я бегу which curator
, он указывает на /usr/local/bin/curator
EDIT: Для того, чтобы ответить на вопрос untergeek, вот это содержимое /usr/local/bin/curator
#!/usr/bin/python
# -*- coding: utf-8 -*-
import re
import sys
from curator.curator import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
sys.exit(main())
Что содержимое '/ USR/местные/бен/curator'? – untergeek