Gururi.logスマートフォン用の表示で見るGururi.logid:Gururiの記録です。Serverに更新されたのだが、Mavericksになって設定が変わったようで、変なタイミングで実行されるようになってしまった。それを修正したのでメモ。変わったか?今回問題にしているのは、/etc/periodic/{daily|weekly|monthly}/に置かれたスクリプトを定期的に実行する設定。Xでも同じ*2なのだが、設定が異なっている。2629746秒ごと*5に1回となってしまった。何時に起動する、という指定ではなくなっている。指定されているのは実行間隔で、このためにあらぬ時刻に実行されていた。職場のサーバではログローテートやプロキシサーバの集計を行っているのでこれはまずい。Lion以前と同じ設定に直せればいいや、ということで、それを目標とした。設定の確認とにもかくにも、今と以前の設定を確認するところからスタート。あるので、これの中身を確認する。-sでrootになり、defaultsコマンドで確認してみる。例示はdailyのものである。("/usr/libexec/periodic-wrapper",daily);}となっている。StartCalendarIntervalがなくなり、LaunchEventsに置き換わっている。dailyに変更されている。manを見るとわかるが、periodic-wrapperを直接実行することは出来ない*6。これはなんなんだ?となるが、/usr/sbin/periodicは健在で、こちらに適切な引数を与えて実行すれば良いので、取り敢えず深く考えないことにする。基本的には以前と同じにすれば良いので、実行すべきコマンドを適切に変更した上で、スケジュールをLaunchEventsではなくStartCalendarIntervalで指定すれば良い。オリジナルの設定ファイルは、拡張子をplis_として別名保存し、設定を変更してみた。以下は変更の為のコマンドである。launchctlで一度unloadして、ファイルをコピーし、設定を書き換えたのち、再びlaunchctlでloadする。赤字で書いた部分を変更すれば、任意の日付・時刻に実行させることができる。/System/Library/LaunchDaemons/com.apple.periodic-monthly.plist書き換わったかどうか確認してみよう。子子子子子子(ねこのここねこ)を参照のこと。*1:ファイルサーバについては実はあまりめでたくなかったが、今回は関係無い。*2:/etc/{dai|week|month}ly.localがあると続けてそれを実行するのも同じ。*3:1日*4:7日*5:約30.4日*6:実行してみても、実行されて欲しいスクリプトが実行されない。Wifiその後スターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。