在我的ubuntu 18服务器上,我创建一个像这样的.sh文件:
#!/bin/bash
source "/home/ubuntu/.venv36/bin/activate"
nohup python manage.py runserver &
好吧,我将其另存为我的/var/www/web/core
目录中的startup.sh。
此时,如果在控制台中,我将工作目录如下:
cd /var/www/web/core
并执行
. startup.sh
一切正常,创建virtualenv并启动运行服务器。 问题是如果从根目录我直接像这样调用我的脚本:
/var/www/web/core/startup.sh
命令源无法运行,但是nohup是的,并且最终我的应用程序无法运行。 如何直接执行sh文件?我需要在服务器启动时执行它,现在在crontab中使用以下命令:
@reboot /var/www/web/core/startup.sh
但是它不能像我上面解释的那样工作。