Сценарий Bash хорошо работает, но не в кроне

У меня есть сценарий, это, как предполагается, записывает shoutcast поток в течение часа, преобразовывает его в mp3 и затем сохраняет его. Сценарий работает правильно, когда я выполняю его от терминала, но я, может казаться, не заставляю его работать в кроне (куда он должен работать каждый час в начале часа).

Вот строка в crontab:

0 * * * * /medialib/tech/bin/recordstream 2>&1 >> /medialib/tech/cron.log

и вот сценарий:

#!/bin/bash
name="$(date +%s)"

mp3_name=$name.mp3
wav_name=$name.wav

timeout -sHUP 60m vlc -I dummy --sout "#transcode{channels=2}:std{access=file,mux=wav,dst=/medialib/stream_backup/wav/$wav_name" /medialib/tech/lib/listen.m3u

lame --mp3input /medialib/stream_backup/wav/$wav_name /medialib/stream_backup/$mp3_name

rm /medialib/stream_backup/wav/$wav_name

Спасибо!

Править: Содержание cron.log (Этот текст был в файле журнала, так как он был передан со старого сервера, где он работал).

VLC media player 2.0.8 Twoflower
Command Line Interface initialized. Type `help' for help.
> Shutting down.
VLC media player 2.0.8 Twoflower
Command Line Interface initialized. Type `help' for help.
> Shutting down.
3
задан 6 June 2014 в 19:10

1 ответ

Во-первых попытайтесь видеть, работает ли крон

ps -ef | grep cron

, Если он не работает, запустите его как корень

sudo /etc/init.d/cron start (Ubuntu and Red Hat).

, Во-вторых, проверьте полномочия сценария, если он имеет "x" опцию и затем пытается работать

crontab -e

Попытка видеть, перечислен ли крон, который Вы сделали, с этим РЕДАКТИРОВАНИЕМ команды

crontab -l

:

Попытка добавить/bin/bash право перед Вашим вызовом сценария:

0 * * * * /bin/bash /script/file

Больше подсказки для решения его здесь .

0
ответ дан 7 October 2019 в 17:17

Другие вопросы по тегам:

Похожие вопросы: