主要问题
我正在尝试为我的系统自动加载驱动程序。驱动程序是手动构建的,必须手动加载。另一个需要注意的是,必须先加载和卸载其中一个系统驱动程序,然后才能手动插入构建的驱动程序。在 CLI 中,它看起来像这样:
modprobe gspca_main && rmmod gspca_main && modprobe videodev && insmod gspca_main.ko && insmod gspca_kinect2.ko
选项
我想在启动时自动执行此操作,这样我就不必每次都运行上述内容。正如我目前所看到的,我有几个选择:
- 克朗
看起来我可以在这里使用@reboot 字符串来运行脚本
- 在里面
或者,我考虑过创建一个init
脚本,但我不一定需要对runlevel
's 或执行时间的所有控制。在这里,我没有看到任何Exec
“另一件事”所必需的 multiples 实例。
- 模组探针
在下面添加一个conf
文件/etc/modprobe.d
似乎最有意义,因为毕竟我正在尝试加载一些驱动程序。这个选项的唯一问题是我不确定驱动程序是否可以顺序加载然后卸载。
另一件事
所有这一切的另一部分是在加载驱动程序后,我还需要运行一个脚本:
#!/bin/sh
sudo rmmod v4l2loopback
sudo modprobe v4l2loopback video_nr=10 card_label="Kinect v2"
ffmpeg \
-i /dev/video0 \
-vsync drop \
-filter:v fps=30,scale=1280:-1,hflip \
-pix_fmt yuyv422 \
-color_trc bt709 \
-color_primaries bt709 \
-color_range tv \
-f v4l2 \
/dev/video10
哪个似乎更适合cron
or init
。
哪个选项是稳定性和易于配置的最佳折衷方案?
提前感谢您的任何/所有帮助!