Linux设置服务自启_开机启动配置方法

11次阅读

linux 服务开机自启由 systemd 统一管理,启用用 systemctl enable(可加 –now 立即启动),禁用用 disable,状态通过 is-enabled/is-active 查看,自定义服务需先创建 unit 文件并 daemon-reload。

Linux 设置服务自启_开机启动配置方法

Linux 服务开机自启主要通过 systemd 管理,不同发行版操作一致,关键是掌握启用、禁用、状态查看和手动触发的命令逻辑。

启用服务开机自启

使用 systemctl enable 命令将服务写入启动目标(如 multi-user.target),系统下次启动时自动拉起该服务。

  • 启用并立即启动:sudo systemctl enable –now nginx
  • 仅启用(不立即启动):sudo systemctl enable sshd
  • 启用时指定启动级别(如图形界面):sudo systemctl enable –now myapp.service –now –no-block(一般无需指定,默认适配)

禁用或取消自启

禁用不会停止正在运行的服务,只移除开机触发链接。

  • 禁用自启:sudo systemctl disable docker
  • 禁用并立即停止:sudo systemctl disable –now chrony

验证是否生效

启用 / 禁用后建议检查状态,确认服务单元文件存在且链接已创建。

  • 查看服务当前启用状态:systemctl is-enabled nginx(返回 enabled/disabled)
  • 查看是否正在运行:systemctl is-active nginx(返回 active/inactive)
  • 列出所有已启用的服务:systemctl list-unit-files –type=service | grep enabled

自定义服务需先确保单元文件就位

若服务无预置 unit 文件(如自己写的脚本),需先创建/etc/systemd/system/myscript.service,再执行 enable。

  • 最小可用模板示例:
  • [Unit]
     Description=My Custom Script
     After=network.target

    [Service]
     Type=simple
     ExecStart=/opt/bin/myscript.sh
     Restart=on-failure

    [Install]
     WantedBy=multi-user.target

  • 保存后重载配置:sudo systemctl daemon-reload
  • 再执行sudo systemctl enable myscript
text=ZqhQzanResources