Я пытаюсь сделать снимок с помощью своей веб-камеры, и мне нужно зарегистрировать вывод, чтобы проверить наличие ошибок, но cron не может это сделать. Я могу сделать это из терминала, но cron работает не работает.
Вот сценарий:
#!/bin/bash script -ac "fswebcam -c /home/webcam/webcam.conf" /data/webcam/logscript.txt
Crontab:
@reboot mv /home/webcam/tmp/* /home/webcam/tmp_lost/ * * * * * sh /data/webcam/script.sh > /data/webcam/log.txt 2>&1
Терминальный выход:
[webcam@raspberry-pi webcam]$ sh /data/webcam/script.sh Script started, file is /data/webcam/logscript.txt --- Opening V4L2:/dev/video0... /dev/video0 opened. Setting Brightness to 0 (50%). Setting Contrast to 19 (20%). --- Capturing frame... Skipping 50 frames... Timed out waiting for frame! Capturing 1 frames... Timed out waiting for frame! Captured frame in 0.00 seconds. No frames captured. Script done, file is /data/webcam/logscript.txt
logscript.txt (генерируется командой script) при запуске из терминала:
[webcam@raspberry-pi webcam]$ cat logscript.txt Script started on ke 21. elokuuta 2013 21.10.52 --- Opening V4L2:/dev/video0... /dev/video0 opened. Setting Brightness to 0 (50%). Setting Contrast to 19 (20%). --- Capturing frame... Skipping 50 frames... Capturing 1 frames... gd-jpeg: JPEG library reports unrecoverable error: Not a JPEG file: starts with 0xba 0x28 Captured 51 frames in 3.91 seconds. (13 fps) --- Processing captured image... Flipping image horizontally. Flipping image vertically. Putting banner at the bottom. Setting banner background colour to #FF000000. Setting banner line colour to #FF000000. Setting banner text colour to #FFFF00. Setting font to luxisr:12. Setting timestamp "%d.%m.%Y %H:%M". Writing JPEG image to '/home/webcam/tmp.jpg'. Script done on ke 21. elokuuta 2013 21.10.57
Запуск через cron. Выход Cron -> log.txt
[webcam@raspberry-pi webcam]$ cat log.txt Script started, file is /data/webcam/logscript.txt Script done, file is /data/webcam/logscript.txt --- Opening V4L2:/dev/video0... /dev/video0 opened. Setting Brightness to 0 (50%). Setting Contrast to 19 (20%). --- Capturing frame... Skipping 50 frames... Capturing 1 frames... gd-jpeg: JPEG library reports unrecoverable error: Not a JPEG file: starts with 0x8e 0x80 Captured 51 frames in 3.38 seconds. (15 fps) --- Processing captured image... Flipping image horizontally. Flipping image vertically. Putting banner at the bottom. Setting banner background colour to #FF000000. Setting banner line colour to #FF000000. Setting banner text colour to #FFFF00. Setting font to luxisr:12. Setting timestamp "%d.%m.%Y %H:%M". Writing JPEG image to '/home/webcam/tmp.jpg'. Script started, file is /data/webcam/logscript.txt
Файл logscript.txt пуст после Cron, и это проблема. Как вы можете видеть: при запуске из cron команда script запускается и выполняется до того, как произойдет какой-либо вывод. Когда в терминале это хорошо. Кто-нибудь знает, почему это происходит?