在 jetson nano 上使用 systemd 和服务文件运行 python 脚本
Runnig a python script using systemd and service file on the jetson nano
我正在尝试在 jetson nano 启动时将正确的参数设置为 运行 一个 python 脚本。我面临一个问题,即服务文件不想识别使用 pip 安装的库。如果代码是从命令行编译的,它可以正常工作而不会遇到任何问题,但是在 systemd 支持下我会收到此错误:
here the first image(上传://k2pWgcIRAB7N2OzLrascOEi1HrI.jpeg)
second image
服务文件如下图所示:
service file
如果有人能帮助我,我将不胜感激。
您有几个选项,但本质上您需要做的是确保安装的软件包在 运行 作为配置用户(默认为 root)时对 python 可用。
接下来,由于您已将脚本拆分为多个文件,因此您需要确保这些文件位于 python 已知的位置(或指示 python 在其他目录中查找)。
以下配置应该有所帮助,假设 运行将脚本作为 /home/znvidia
中的 znvidia
用户是您正在工作的。
[Unit]
Description="Some useful description"
[Service]
User=znvidia # Or leave out for root
WorkingDirectory=/home/znvidia/Desktop
ExecStart=/usr/bin/python3.6 /home/znvidia/Desktop/Drowsiness_detection.py
[Install]
WantedBy=multi-user.target
我正在尝试在 jetson nano 启动时将正确的参数设置为 运行 一个 python 脚本。我面临一个问题,即服务文件不想识别使用 pip 安装的库。如果代码是从命令行编译的,它可以正常工作而不会遇到任何问题,但是在 systemd 支持下我会收到此错误: here the first image(上传://k2pWgcIRAB7N2OzLrascOEi1HrI.jpeg)
second image
服务文件如下图所示: service file
如果有人能帮助我,我将不胜感激。
您有几个选项,但本质上您需要做的是确保安装的软件包在 运行 作为配置用户(默认为 root)时对 python 可用。
接下来,由于您已将脚本拆分为多个文件,因此您需要确保这些文件位于 python 已知的位置(或指示 python 在其他目录中查找)。
以下配置应该有所帮助,假设 运行将脚本作为 /home/znvidia
中的 znvidia
用户是您正在工作的。
[Unit]
Description="Some useful description"
[Service]
User=znvidia # Or leave out for root
WorkingDirectory=/home/znvidia/Desktop
ExecStart=/usr/bin/python3.6 /home/znvidia/Desktop/Drowsiness_detection.py
[Install]
WantedBy=multi-user.target