ロリポップのサーバーで忘れたころにcron設定し、よく動かいないのでメモします。
他のレンサバも同じように設定すれば動くと思います。
MovableTypeの「日時指定」を有効にするには、cronの設定をし、サーバー上にshというシェルスクリプトのファイルを設置する必要があります。
そもそもcron設定とは
私もよく知らないので説明を引用します。
cronとは、UNIX系システムの常駐プログラム(デーモン)の一種で、ユーザの設定したスケジュールに基づいて指定したコマンドやシェルスクリプトなどを自動実行してくれるプログラム。
実行スケジュールは毎時、毎日、毎週、毎月をはじめ細かく指定でき、「crontab」というファイルに記述・保存しておく。crond(cron daemon)というプロセスがcrontabの内容に従って、決められた日時にコマンドなどを実行してくれる。
cron設定することで、指定した日時にシェルスクリプト(shファイル)を実行してくれるみたいです。
cronの設定は、ロリポップのコンパネから可能です。
順番としては、シェルスクリプト(shファイル)を作成し、サーバーへアップロードした後にcronの設定をするという流れになります。
そもそもシェルスクリプト(shファイル)とは
これも、よく知らないので引用します。
シェルスクリプトとは、複数の処理をまとめて行う(バッチ処理)ときに使われる、OSのシェルが直接解釈・処理できるスクリプト。
要は、このような動作をしろよって記述したコードってことですね。
シェルスクリプトに動作内容を記述し、cron設定でシェルスクリプトに記述した動作をいつ実行するのかを指定しているということですね。
shファイルの作成&設置
テキストエディタで文字コードを「UTF-8」に、改行を「LF」に設定して下記のコードを記述してください。
コード内にあるフルパスは /home/users/・・・
から始まるパスになります。
ロリポップのコンパネのアカウント情報に記載してあります。
コード内にあるMTディレクトリは、MTのファイルをアップロードしたディレクトリ名になります。
#!/bin/sh
cd /フルパス/MTディレクトリ/
/usr/bin/perl ./tools/run-periodic-tasks
exit
ファイル名は任意で指定可能で、拡張子をshとしてファイルを保存してください。
仮にmtというファイル名にする場合は「mt.sh」となります。
このファイルをサーバーの任意の場所へアップロードし、ロリポップのコンパネからcron設定をするときにmt.shを設置したパスを記述します。
mt.shファイルのパーミッションを 700
に変更してください。
cron設定は「cron設定 - ロリポップ」をご覧ください。