最近、elasticsearch-curator を 3.4.1 から 4.1.0 にアップグレードしました。また、3.4.1 で行っていたのと同じことを行うために必要な新しい構成ファイルとアクション ファイルも作成しました。何が起こるかというと、cron がスクリプトを実行すると、3.4.1 として表示されます。スクリプトを手動でsudo実行すると、4.1.0と表示されます
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
スクリプトを sudo として実行でき、バージョン番号は 4.1.0 を示しています。
/etc/cron.hourly/curator
curator, version 4.1.0
cron にジョブを実行させると、バージョン 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())