在启动时以root用户身份运行Python脚本

在启动时以root用户身份运行Python脚本,python,raspberry-pi,root,boot,Python,Raspberry Pi,Root,Boot,我写了一个python程序,我想在启动时执行,但它必须以root用户身份执行,我不知道如何执行。 我需要做什么来实现这一目标?我应该把文件放在哪里(脚本在一个包含必要python包的文件夹中),以便在启动时运行? 如何以root用户身份运行该文件?无论是将python文件夹放在某个目录中,还是使用其他脚本执行python脚本,或者以其他方式,请分享您的解决方案! 我是在Raspberry Pi上做的,所以操作系统是Linux。最简单的方法是: [Unit] Description=Some py

我写了一个python程序,我想在启动时执行,但它必须以root用户身份执行,我不知道如何执行。 我需要做什么来实现这一目标?我应该把文件放在哪里(脚本在一个包含必要python包的文件夹中),以便在启动时运行? 如何以root用户身份运行该文件?无论是将python文件夹放在某个目录中,还是使用其他脚本执行python脚本,或者以其他方式,请分享您的解决方案! 我是在Raspberry Pi上做的,所以操作系统是Linux。

最简单的方法是:

[Unit]
Description=Some python script
After=network.target

[Service]
ExecStart=/usr/bin/python3 script.py
WorkingDirectory=/path/to/scriptdir
StandardOutput=inherit
StandardError=inherit
Restart=always
User=root

[Install]
WantedBy=multi-user.target

您应该将其保存在
/etc/systemd/system/servicename.service
中,其中
servicename
可以是任何内容,然后使用
sudo systemctl enable servicename.service将其设置为在启动时运行。service

检查此项:谢谢回答Aplet123。虽然它在启动时运行,但我认为它仍然不能作为root运行。如何做到这一点?是什么让你这么想的?Systemd应该以root用户身份运行它。