我对我在这个主题上写的东西很纠结。情况是这样的:
我在地址http://myrpi.com/
上有一个lighttpd的RPi
我有另一个网址是http://othersite.com/
在其他站点的索引(http:\\othersite.com\index.html
)中,我想嵌入一个python脚本,它提供来自myrpi.com网站(<img src="http://myrpi.com/pixel.py">
)
在这个脚本中,除了读取一个png文件并将其内部内容打印回请求程序之外,我希望它运行一些shell命令,这些命令将通过RPi gpio点亮一个led。在
到目前为止,我是在其他人的帮助下完成这个脚本的,但是它仍然不起作用。服务图像部分正常工作,led不工作。即使命令行中的相同命令工作正常:
#!/usr/bin/env python
import subprocess
import time
import cgi
import cgitb
cgitb.enable()
subprocess.check_call(['/home/pi/scripts/wiringPi/gpio/gpio' ,'write', '7', '1'])
print "Content-type: image/jpeg\n"
f=open("/var/www/cgi-bin/1.png")
data=f.read()
f.close()
print data
time.sleep(0.5)
subprocess.check_call(['/home/pi/scripts/wiringPi/gpio/gpio', 'write', '7', '0'])
但是,使用subprocess.check_call
我得到了一个异常(正常的subprocess.call
-提供图像但没有led):http://i.imgur.com/wJR17tB.png
有点迷路了。有什么不同的方法吗?或者如何解决这个问题?在
谢谢你!在
更新:
如果我在命令行中运行:
$ sudo /home/pi/scripts/wiringPi/gpio/gpio write 7 1
它起作用了。没有sudo
-上面写着:
/home/pi/scripts/wiringPi/gpio/gpio: Must be root to run. Program should be suid root. This is an error.
如果我使用suid(chmod u+s
)gpio,那么即使使用sudo,它也不能工作。在
目前没有回答
相关问题 更多 >
编程相关推荐