linux Cron失败,并显示消息“超集:未找到命令

g2ieeal7  于 2022-11-02  发布在  Linux
关注(0)|答案(1)|浏览(226)

我已经按照apache超集网页上的安装指南安装了Python 3.7的超集。
即使我可以手动启动服务器,但当我尝试编写启动步骤脚本并执行cron时,它还是失败了。
执行的输出如下:

superset: command not found

我已经看过这个topic的回复了,但是没有任何东西适用于这个案例。我没有使用virtualenv进行安装。
以下是which命令的输出:

ec2-user@Superset-STAGE /var/spool/mail$which python3
/usr/bin/python3 

ec2-user@Superset-STAGE /var/spool/mail$which superset
~/.local/bin/superset

ec2-user@Superset-STAGE /var/spool/mail$sudo superset
sudo: superset: command not found

你能指导我如何让我的脚本工作没有失败吗?脚本看起来像下面。

superset init
wait
superset runserver -d
1qczuiv0

1qczuiv01#

Cron以root用户身份运行,这意味着它的主目录是/root,而不是您所期望的/home/ec2-user。这意味着它将无法找到/home/ec2-user/.local/bin/superset,因为它既没有在~/.local/bin/superset中查找可执行文件,也没有以拥有这样一个目录的用户身份登录。这里的一个快速解决方法是使用完整路径,但我建议将可执行文件移动到更合适的目录(如/usr/local/bin)中,然后将其添加到/etc/profile中的PATH变量中

相关问题