incrondがサービスとして実行されていると、ユーザーのincrontabは機能しません(rootのみ)。

incrondがサービスとして実行されていると、ユーザーのincrontabは機能しません(rootのみ)。

これは私のincrontabです(Tonyのincrontab)。

/home/tony/Workspace/cocoonr/ui/static/ui/img/icons/vector IN_MODIFY,IN_CREATE,IN_MOVED_TO /bin/sh /home/tony/Workspace/cocoonr/boilerplate/svg2djangohtml $@/$# /home/tony/Workspace/cocoonr/ui/templates/inc/icons/

何度もテストしていくつかの変更を加えましたが、incrondがサービスとして実行されたとき(openrcを使用)は機能しませんでした。

incrond -nTonyのincrontabは、前景でincrond()を実行すると機能します。

ルートの incrontab を上記の値に設定すると、サービスとして実行しても機能します。

私のTonyは次の場所にあります/etc/incron.allow

root
tony

そしていいえ/etc/incron.deny

私はもっ​​と簡単なincrontabを使ってみました。

/tmp/foo IN_ATTRIB touch /tmp/bar

結果は同じです。

ユーザーのincrontabを正しく機能させる方法は?

ベストアンサー1

incrontabバイナリ(知らず、使用したことがない)にSGIDビットが設定されていないと、奇妙な動作が発生する可能性があります。

設定してくださいchmod g+s /path/to/binary(/usr/bin/incrontab、おそらく?)

以下で設定するかどうかを評価できます。

ls -l /path/to/binary

(例)

ls -l /usr/bin/crontab
-rwxr-s--x 1 root crontab 44336 Jun 23 18:47 /usr/bin/crontab

おすすめ記事