我使用Raspberry Pi作为(非常简单的)家庭气象站。
我目前有一个小的python脚本,在运行时,需要读取温度并通过Google Docs API将结果作为新行发布到Google电子表格。这个python脚本需要以root身份运行,我目前通过安排这个脚本在超级用户的crontab中每小时运行来获得良好的结果。
我还得到了这个Pi运行Nginix和uWsgi来提供支持Django的网站,我想开始将温度记录到本地数据库以及Google电子表格。我想通过Django的ORM来做这件事,因为这是我最熟悉的。
我有两个具体目标:
我的问题是:最好的方法是什么,知道任何访问温度探测器的代码都必须以root身份运行?
对于#1,我想这个问题归结为:加载一个“感觉像Django shell”的python环境的最佳方法是它可以很容易地完成所有相同的导入(特别是像ORM这样的东西) ?如果我能做到这一点,我可以编写一个新脚本来执行电子表格上传和数据库写入。我可以/我应该通过Django“命令”执行此操作,然后将其安排在超级用户的crontab中运行吗?或者我应该通过一个常规的旧python脚本来执行此操作,并加载正确的Django特定模块?
对于#2,我一直在寻找有关如何处理温度传感器读数的“必须以root运行”问题的建议。我显然不希望以root身份运行整个Django进程。那么我最好的选择是什么?
感谢。