さくらインターネットにssh接続してcrontabでCRON設定する

さくらインターネットさんでいくつかサーバ借りててお世話になってる@kasumiiです。こんにちは。

さくらインターネットのサーバコントロールパネルの注意事項に「コントロールパネルから設定できるCRONは5つです。」と記載されているとおり、実際に5つ登録してみると新規にCRONを追加することができなくなります。

ただこれはコントロールパネルからはできないよ、という意味で、コマンドラインでcrontabを設定すれば5個以上も可能です。

このやり方を毎回忘れてしまうので、手順をメモメモ。

Macなら「アプリケーション」→「ユーティリティ」→「ターミナル.app」を起動して、

ssh アカウント名@アカウント名.sakura.ne.jp

と入力してリターンキーを押す。パスワードを聞かれるので、入力すればログイン完了。

以下のコマンドでcrontabを開き、viというエディタで編集します。

crontab -e

たとえば、毎時10分に /home/youraccount/path/to/ にある test.php を実行したい場合はこんな感じ。

10 * * * * cd /home/youraccount/path/to/ ; /usr/local/bin/php test.php

覚えられないので最低限のコマンドだけメモw

その他のコマンドは「viエディタの使い方」を参考にどうぞ。

esc コマンドモードと編集モードの切り替え
i 現在のカーソル位置に挿入
o 次の行に移動して挿入
x 1文字削除
dd 1行削除
:q! 保存しないで終了
:wq 保存して終了

viが起動したらまず esc で編集モードに切り替え。

あらかじめ普段使っているエディタでCRONの設定内容を書いてコピーしておき、viでペーストすれば簡単。

viで設定を入力し終わったら esc でコマンドモードに戻し :wq で保存して終了。

crontab: installing new crontab

という文字が出れば完了です。

ターミナルは exit で終了させておきましょう。

CRONの設定内容を表示するコマンドを入力。

crontab -l

で追加した内容がちゃんと表示されればOK。さくらインターネットのコントロールパネルにもちゃんとCRONが5個以上表示されているはず!

めでたしめでたし。