Bash脚本通过网页拍照
所以我试图通过使用PHP的网页运行bash脚本,(如果相关的话,在树莓派上)。 普通命令可以像'ls'等一样正常工作。但是,当试图从连接到Pi的网络摄像头拍摄照片时,使用命令'fswebcam image.jpg'它根本不起作用。
我正在努力确定问题。 这可能与权限有关吗?
直接通过终端拍摄照片效果不错。
编辑:
对不起,关于没有在开始时包括这个信息,但我很新手在所有的东西网络...但我使用LEMP堆栈,所以我没有Apache运行,但使用Nginx
正如你怀疑的那样,我认为你的硬件在树莓派上面临许可问题。 作为混合树莓/硬件/ linux / web的主题,你可以在互联网上阅读许多垃圾解决方案; 他们经常在任何地方提供root权限
在你的情况下,我认为你的Apache日志文件( /var/log/apache2/error.log
?)将包含错误消息,类型:
can not access /dev/vchiq
目前,您的apache用户(www-data)无法访问它:
pi$ ls -l /dev/vchiq
crw-rw---T 1 root video 248, 0 Jan 1 1970 /dev/vchiq
输入这些命令:
sudo usermod -a -G video www-data
sudo /etc/init.d/apache2 restart
这意味着用户www-data将被添加到组视频中(可以访问/ dev / vchiq)。 然后,您必须重新启动您的apache服务器,以便重新读取组文件并获知有关更改。 注意:如果您必须从网络访问它们,您可以将www数据添加到gpio组。
PHP以apache用户权限运行。
你的apache用户是否有权启动fswebcam?
ll $(which fswebcam)
所以从我收到的错误消息(上面发布)我意识到/ dev / video0需要其他用户的权限。 所以我的解决方案只是去:
chmod 777 /dev/video0
这可能是一个肮脏的解决方案,但仍然有效
链接地址: http://www.djcxy.com/p/77157.html