На моем сервере Ubuntu 18 я создаю файл .sh, подобный этому:
#!/bin/bash
source "/home/ubuntu/.venv36/bin/activate"
nohup python manage.py runserver &
Хорошо, я сохраняю его как startup.sh в моем каталоге /var/www/web/core
.
На данный момент, если в консоли я поместил мой рабочий каталог так:
cd /var/www/web/core
и выполнить
. startup.sh
все работает нормально, virtualenv создается и запускается сервер запуска nohup.
проблема в том, что из root я напрямую вызываю свой скрипт так:
/var/www/web/core/startup.sh
источник команд не запускается, но да, но мое приложение не работает.
Как я могу выполнить непосредственно мой файл sh? Мне нужно выполнить его при запуске сервера, теперь я использую в crontab команду:
@reboot /var/www/web/core/startup.sh
но это не работает, как я объяснил выше.