来自cronjob的python脚本出现错误,但不是来自bash。?

来自cronjob的python脚本出现错误,但不是来自bash。?,python,python-2.7,python-3.x,subprocess,Python,Python 2.7,Python 3.x,Subprocess,我正在尝试通过子进程python模块从cronjob运行nessus扫描,但从cronjob来看,它给出了一个错误。但在从bash执行脚本时没有给出任何错误 cronjob代码 01 11 * * * /root/nessusscan.py 脚本中的子进程调用是 subprocess.call(['nessus','-q','-x','-T','nessus','127.0.0.1','1241','user','password','ip.txt','res']) 从bash来看,它工作得

我正在尝试通过子进程python模块从cronjob运行nessus扫描,但从cronjob来看,它给出了一个错误。但在从bash执行脚本时没有给出任何错误

cronjob代码

01 11 * * * /root/nessusscan.py
脚本中的子进程调用是

subprocess.call(['nessus','-q','-x','-T','nessus','127.0.0.1','1241','user','password','ip.txt','res'])
从bash来看,它工作得很好,但从cronjob来看,我在邮件中收到了以下错误

Traceback (most recent call last):
  File "/root/nessusscan.py", line 9, in <module>
    subprocess.call(['nessus','-q','-x','-T','nessus','127.0.0.1','1241','user','password','ip.txt','res'])
  File "/usr/lib/python2.7/subprocess.py", line 493, in call
    return Popen(*popenargs, **kwargs).wait()
  File "/usr/lib/python2.7/subprocess.py", line 679, in __init__
    errread, errwrite)
  File "/usr/lib/python2.7/subprocess.py", line 1249, in _execute_child
    raise child_exception
OSError: [Errno 13] Permission denied
回溯(最近一次呼叫最后一次):
文件“/root/nessuscan.py”,第9行,在
子进程调用(['nessus'、'-q'、'-x'、'-T'、'nessus'、'127.0.0.1'、'1241'、'user'、'password'、'ip.txt'、'res']))
文件“/usr/lib/python2.7/subprocess.py”,第493行,在调用中
返回Popen(*popenargs,**kwargs)。等待()
文件“/usr/lib/python2.7/subprocess.py”,第679行,在__
错误读取,错误写入)
文件“/usr/lib/python2.7/subprocess.py”,第1249行,在执行子进程中
引发子对象异常
OSError:[Errno 13]权限被拒绝

Thnx致evry one我为其他将访问此帖子的人回答我自己的问题。这样他们也可以摆脱这个错误。在我的例子中,通过给出nessus的路径解决了这个错误,路径是
“/opt/nessus/bin/nessus”

nessus
替换为
“/opt/nessus/bin/nessus”


cronjob无法获取nessus命令的路径。它现在正在工作。

可能cron作业正在以其他用户身份运行?请参阅以获取一些想法。@Bo102010实际上没有。。。它正在以root身份运行。。。。我是说我是从root用户登录的。。。。