如何在启动 Linux 机器时运行脚本?

Ted*_*ong 4 linux boot python

我想在启动 Linux 机器时运行 python 脚本。我怎么能这样做?我不需要用户登录操作系统来启动脚本。(用户受密码保护。)

mnm*_*mnc 5

通用方法 - 将脚本添加到/etc/rc.local

/usr/bin/python pythonscript.py
Run Code Online (Sandbox Code Playgroud)

如果你的 python 解释器在/usr/bin, 或者干脆

/path/to/pythonscript.py
Run Code Online (Sandbox Code Playgroud)

如果您的脚本被标记为可执行 (+x)。

请注意,某些系统使用/etc/rc.d/rc.local代替。


systemd系统上, rc.local 可能会被完全忽略。

创建一个服务单元,:/etc/systemd/system/something.service

[单元]
描述=脚本名称

[服务]
ExecStart= /path/to/script.py

[安装]
WantedBy=multi-user.target

告诉systemd在启动时使用.systemctl enable something.service

  • 尽管 Ted 明确询问操作系统启动而不是用户登录,但登录后脚本的正确位置是`.profile`、`.xprofile` 和/或`.config/autostart/`。添加一些东西到`.bashrc` 将导致它运行*每次终端打开*。 (2认同)
  • 请注意:在某些系统上,该文件可能位于`/etc/rc.d/rc.local`。 (2认同)