На Intel NUC я загрузил Ubuntu 16.04. Я отключил модуль рабочего стола, внеся изменения в / etc / default / grub
. машина загружается в текстовом режиме. У меня есть программа на Python, которая использует Opencv ( Opencv4.0.0 в настоящее время установлен
) и библиотеку imutils
и веб-камеру. Я создал сценарий bash с именем runBot.sh
, запускающий программу python. Сценарий bash содержит следующее:
#!/bin/bash
python3 /home/mycomp/rfd/liveCamObject.py
Когда я запускаю его в окне терминала с помощью
sh runBot.sh
, он запускается без проблем. Однако я пытаюсь запустить программу при перезагрузке. , поэтому я установил задание cron, которое выглядит следующим образом:
@reboot /home/mycomp/runBot.sh
И файл sh, и файл .py имеют права sudo rwx
.
Когда я перезагружаю машину, при загрузке я получаю следующая ошибка:
error: no video mode activated
и через несколько секунд он загружается нормально и ждет входа в систему и пароля.Сценарий bash при перезагрузке запускается, но выдает ошибку:
VIDEOIO ERROR:V4L: can't open camera by index 0.
Так как runBot.sh запускается из условия inal, а не crontab, я попытался сменить владельца с mycomp: mycomp
на root: mycomp
, это не помогло. Я читал это предоставление
sudo modprobe bcm2835-v4l2
и пробовал различные комбинации v4_l_2, V4_L_2
и т. Д.У меня всегда возникала ошибка
FATAL: Module `bcm2835-v4l2` not found in directory `/lib/modules/4.15.0-43-generic`
Как включить видеокамеру при загрузке?
Это может помочь: (см. https://forums.zoneminder.com/viewtopic.php?t=23361 )
Сделайте следующее:
sudo v4l2-ctl --list-devices
sudo chmod 777 /dev/video0
для каждого устройства
Кажется, вам нужно повторить chmod
после перезапуска