如何在root / sudo中使用python subprocess.check_output
我正在写一个将在Raspberry上运行的
Python脚本,它将从传感器读取温度并记录到Thingspeak.我有这个使用bash脚本,但不想用Python做,因为它更容易操作和检查读取值.传感器读数由名为loldht的库完成.我试图像这样做:
from subprocess import STDOUT,check_output output = check_output("/home/pi/bin/lol_dht22/loldht",timeout=10) 问题是我必须使用sudo运行库才能访问引脚.我将脚本作为cron运行.有可能用sudo运行吗? 或者我可以创建一个执行’sudo loldht’然后从python运行bash脚本的bash脚本吗? 解决方法
您可以将python script.py放在具有足够权限的用户的cron中(例如root或具有相关文件和设备权限的用户) 我不知道你正在使用哪个操作系统,但如果Raspbian接近Debian,则不需要sudo或root,只需使用具有足够权限的用户.
当然,但是要调用该Python脚本的unix用户需要sudo权限(否则无法从子进程调用sudo).在这种情况下,您可以执行上述操作,从具有所需权限的用户运行cron. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |