Я сталкиваюсь с проблемой с USB-устройствами в Ubuntu 16.04 при попытке выполнить автозапуск.Я создал файл autostart.sh, который вызывает несколько других скриптов на экране, которые запускают некоторый roslaunch.Файл autostart.sh был вызван в rc.local с помощью
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
/home/uav/aerolion_ws/autostart.sh &
exit 0
Затем в файле autostart.sh я запустил экран и вызвал файл запуска, чтобы запустить USB-камеру с
#!/bin/sh
sleep 1
session_name=usb_cam
screen -S $session_name -d -m
screen -S $session_name -X screen /home/uav/aerolion_ws/autostart/usb_cam.sh
* 1006.* В файле usb_cam.sh он запускает USB-камеру с
#!/bin/sh
./home/uav/aerolion_ws/devel/setup.sh
#source /home/aerolion/aerolion_ws/devel/setup.bash
roslaunch usb_cam usb_cam-test.launch
Если я запускаю rc.local вручную, когда система загружается, файл запуска работает хорошо, и камера запускается правильно.Однако, если он автоматически запускается после перезагрузки, камера не может быть запущена.Такая же ситуация относится и к другим USB-устройствам.Я попытался увеличить задержку запуска USB-камеры, но она все равно не работает, независимо от того, какова задержка.Если я остановлю и перезапущу файл запуска на экране, который запускается автоматически, программа может успешно запуститься.Не уверен, в чем проблема, и надеюсь, что кто-то может помочь, спасибо!