Я не могу заставить работать мой crontab. Я на Ubuntu 14.04x64
Итак, вот что я сделал:
.root
.pw
.sudo apt-get update
.sudo apt-get install nodejs
.sudo apt-get install npm
.curl https://raw.githubusercontent.com/creationix/nvm/v0.11.1/install.sh | bash
[Я перезагружаю Putty]
.nvm install 0.12
.npm install steam
[Теперь я захожу в Filezilla, загружаю file.js в корневой каталог]
.nvm use 0.12
.node file.js
[Файл file.js успешно выполняется, я перезагружаю Putty]
.nvm use 0.12
.npm install forever -g
.forever start file.js
[Файл file.js будет выполняться бесконечно]
Теперь я хочу перезапустить, чтобы выполнить эти команды. Дело в том, что "forever start" не выполнится, если я не выполню "nvm use 0.12" в первую очередь.
Так:
.crontab -e
нано
.*/5 * * * * nvm use 0.12 && forever restart file.js
ctrl + x сохранено
Результат: не перезапускается.
Что я делаю не так? Спасибо!
решение1
Я сам нашел решение.
0 * * * * root/.nvm/v0.12.4/bin/node /usr/local/bin/forever restart file.js
Спасибо, в любом случае! :)
решение2
Для начала, вполне вероятно, что ваш cron не имеет среды по умолчанию, и поэтому вам необходимо указать полные пути для команд и файлов.
Как говорит @MiPnamic, лучше всего обернуть ваш запуск в файл оболочки и выполнить его вместо этого. Это также упрощает корректировку, если вам это понадобится - например, если вы хотите перейти с Node 0.12 на 0.10 или что-то еще.
Кроме того, вы также можете установить версию по умолчанию в NVM, выполнив следующие действия:
nvm alias default v0.12