我在我的 linux 机器上安装了 python 2.7,我正在尝试通过 crontab 安排一个 python 脚本。该脚本在命令行中运行良好,但是通过 cron 运行时我得到:
Traceback (most recent call last):
File "/usr/local/lib/python2.7/site.py", line 553, in <module>
main()
File "/usr/local/lib/python2.7/site.py", line 535, in main
known_paths = addusersitepackages(known_paths)
File "/usr/local/lib/python2.7/site.py", line 268, in addusersitepackages
user_site = getusersitepackages()
File "/usr/local/lib/python2.7/site.py", line 243, in getusersitepackages
user_base = getuserbase() # this will also set USER_BASE
File "/usr/local/lib/python2.7/site.py", line 233, in getuserbase
USER_BASE = get_config_var('userbase')
File "/usr/local/lib/python2.7/sysconfig.py", line 535, in get_config_var
return get_config_vars().get(name)
File "/usr/local/lib/python2.7/sysconfig.py", line 434, in get_config_vars
_init_posix(_CONFIG_VARS)
File "/usr/local/lib/python2.7/sysconfig.py", line 298, in _init_posix
raise IOError(msg)
IOError: invalid Python installation: unable to open /usr/include/python2.7/pyconfig.h (No such file or directory)
我看到 /usr/include/python2.7
不存在,但是 /usr/local/include/python2.7/
存在。我安装 python 时出错了吗?
最佳答案
您可能只安装了 2 个版本,其中一个已损坏。如果您的 cron 只是直接调用 python
而不是特定路径,则您的 PATH
可能在 /usr/之前包含
(这是典型的) - 所以在你的 cron 中,指定要使用的 python,或者删除 /usr/bin
local/bin/usr/bin
和符号链接(symbolic link) /path/to 中的现有 python/good/python
到 /usr/bin/python
。
编辑:从头开始,重新阅读并发现它在命令行中运行良好。 python-dev
可能是要走的路。对不起!
关于python - 从 crontab 运行 python 时出现问题 - "invalid Python installation",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5345934/