ロリポップのレンタルサーバでpythonスクリプトをcron実行できないときに確認すること

カテゴリ: python

ロリポップのレンタルサーバでpythonスクリプトを実行しようとして、sshから直接コマンドを実行すると動くのにcronから自動実行するとうまく動かないことがありました。

which pythonコマンドをそれぞれの環境で実行したところ、以下のように使用しているpythonコマンドが異なっていました

# sshから対話的に実行した時の出力
/usr/local/bin/python

# cronから実行した時の出力
/usr/bin/python

それぞれのpythonコマンドのバージョンを確認すると、python2系と3系が異なっていることがわかりました。

$ /usr/local/bin/python --version
Python 3.4.1

$ /usr/bin/python --version
Python 2.6.6

このため、cronから実行する場合に、試しにpythonコマンドをフルパスで指定すると、想定したversionのpythonが動作するようになり、問題が解決しました。

#!/bin/bash
#
# cron script
#

/usr/local/bin/python foo.py

Amazonでおトクに買い物する方法
AmazonチャージでポイントGET


Amazonは買いもの前にAmazonギフト券をチャージしてポイントをゲットしないと損!

こちらもおススメ

One thought on “ロリポップのレンタルサーバでpythonスクリプトをcron実行できないときに確認すること

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です