【发布时间】:2016-02-21 17:50:20
【问题描述】:
环境
- 树莓派 2
- raspbian-jessie-lite
- Windows 8.1
- 腻子 0.66 (SSH)
问题
无法让 cron 使用 sudo 执行 python 脚本。该脚本处理 GPIO 输入,因此应使用 sudo 调用它。该程序应该将温度和湿度保存到文件中,但 cat temp.txt 和 cat humid.txt 给了我空字符串。
crontab
sudo crontab -e
* * * * * python /home/dixhom/Adafruit_Python_DHT/examples/temphumid.py 1>>/tmp/cronoutput.log 2>>/tmp/cronerror.log
python 脚本
#!/usr/bin/python
import sys
import Adafruit_DHT
import datetime
# Adafruit_DHT.DHT22 : device name
# 4 : pin number
humidity, temperature = Adafruit_DHT.read_retry(Adafruit_DHT.DHT22, 4)
if humidity is not None:
f = open("humid.txt","w")
str = '{0}, {1}'.format(datetime.datetime.now().strftime("%Y/%m/%d %H:%M:%S"), humidity)
f.write(str)
else:
print 'Failed to get reading. Try again!'
sys.exit(1)
if temperature is not None:
f = open("temp.txt","w")
str = '{0}, {1}'.format(datetime.datetime.now().strftime("%Y/%m/%d %H:%M:%S"), temperature)
f.write(str)
else:
print 'Failed to get reading. Try again!'
sys.exit(1)
cronerror.log 和 cronoutput.log
(空)
我尝试了什么
sudo crontab -e-
/usr/bin/python在 cron 中 -
chkconfig cron(cron 开启) -
sudo apt-get updatesudo apt-get upgrade sudo reboot
任何帮助将不胜感激。谢谢。
【问题讨论】:
标签: python linux cron raspberry-pi2 gpio