1、将python安装在个人目录下:
$ tar -xvf Python-2.7.10.tar
$ cd Python-2.7.10
$ ./configure --prefix=$HOME/usr/local --enable-shared
$ make
$ make install
然后,python的解释器和库就安装在了 $HOME/usr/local/bin 和 $HOME/usr/local/lib 下。
2、配置环境变量:编辑 $HOME/.bashrc,添加以下环境变量,再source即可
$ vim $HOME/.bashrc
LD_LIBRARY_PATH=$HOME/usr/local/lib:$LD_LIBRARY_PATH
PYTHONPATH=$HOME/usr/local/bin/python:$HOME/usr/local/lib/python2.7:$PYTHONPATH
PATH=$HOME/usr/local/bin:$PATH
export LD_LIBRARY_PATH PYTHONPATH PATH
$ source $HOME/.bashrc
3、crontab定时执行python程序时有时会出现错误,例如:
ImportError: No module named xxx 或 其他错误
这可能是因为crontab不会带入自定义的环境变量,所以虽然把python安装在了个人目录下,而且设置了.bashrc中的环境变量,但是在crontab中并没有引入这些环境变量,所以crontab中的python仍然是系统中的python,而不是安装在个人目录下的。因此,如果import的模块安装在了个人目录中,就会出现以上问题。
这个问题的解决方法是: 使用一个shell脚本,在该脚本中先source $HOME/.bashrc,然后再执行python脚本,最后在crontab中执行这个shell脚本即可:
$ vim test.sh
#!/bin/sh
source $HOME/.bashrc
python xxx.py
$ crontab -e
0 8 * * * sh test.sh