【发布时间】:2019-08-01 06:22:54
【问题描述】:
我在 python 中编写了一个简单的测试代码,每隔几秒打开和关闭两个 I/O 引脚。我希望能够在板子通电时运行此代码,这样我就不需要在任何我想运行简单测试的地方携带键盘、鼠标和显示器。如何在谷歌珊瑚上的 Mendel OS 上执行此操作?
【问题讨论】:
我在 python 中编写了一个简单的测试代码,每隔几秒打开和关闭两个 I/O 引脚。我希望能够在板子通电时运行此代码,这样我就不需要在任何我想运行简单测试的地方携带键盘、鼠标和显示器。如何在谷歌珊瑚上的 Mendel OS 上执行此操作?
【问题讨论】:
在 Mendel OS 上,您的 systemd 服务应如下所示:
myservice.service:
[Unit]
Description=Example systemd service.
After=weston.target
[Service]
Environment=DISPLAY=:0
PAMName=login
Type=simple
User=mendel
WorkingDirectory=/home/mendel
ExecStart=/bin/bash /usr/bin/test_service.sh
Restart=always
[Install]
WantedBy=multi-user.target
关于如何创建服务以及如何部署服务,可以关注this文章。
用你想要执行的 python 文件更改 'ExecStart' 行。
【讨论】:
我有同样的问题。 这可能对你有用。 https://askubuntu.com/questions/919054/how-do-i-run-a-single-command-at-startup-using-systemd 我能够将新服务添加到 systemd 中,但脚本没有正常运行,但也许这不是你的问题。
【讨论】:
使用 crontab 对我来说一直有效,您可能想在 python 文件的开头添加一个 time.sleep
编辑 crontab
crontab -e
选择纳米编辑器
添加
@reboot sudo python3 <path_to_your_script>
【讨论】: