0

0

Linux怎么设置开机自启_Linux systemd启用服务方法【自启】

裘德小鎮的故事

裘德小鎮的故事

发布时间:2026-02-19 13:16:05

|

511人浏览过

|

来源于php中文网

原创

确认初始化系统为systemd后,编写.service文件需匹配程序行为:type选simple或oneshot,execstart用绝对路径,设after=network.target、user和workingdirectory,启用前必须daemon-reload。

linux怎么设置开机自启_linux systemd启用服务方法【自启】

确认你的系统用的是 systemd

别跳过这步——很多“设了不生效”的问题,根源就是误判了初始化系统。执行:ps -p 1 -ocomm=,如果输出是 systemd,那就可以往下走;如果是 initupstart,本文方法不适用(老系统请用 update-rc.dchkconfig)。

写一个能跑通的 .service 文件

核心不是“照抄模板”,而是匹配你程序的真实行为。常见错误:脚本卡住、路径错、用户权限不对、没等网络就启动。

  • Type=simple:适合前台运行的脚本或二进制(比如 /usr/bin/python3 /opt/myapp/main.py),systemd 把它当主进程管
  • Type=oneshot:适合只执行一次就退出的脚本(比如初始化配置),必须加 RemainAfterExit=yes,否则 systemd 认为服务“已死”
  • ExecStart 必须用绝对路径,python3 要写成 /usr/bin/python3./script.sh 要写成 /home/user/script.sh
  • After=network.targetAfter=multi-user.target 更稳妥,尤其你的程序要连网络或数据库时
  • 如果脚本需要特定用户,请显式写上 User=yourusername,别依赖 root 默认行为

示例(保存为 /etc/systemd/system/myapp.service):

启科网络PHP商城系统
启科网络PHP商城系统

启科网络商城系统由启科网络技术开发团队完全自主开发,使用国内最流行高效的PHP程序语言,并用小巧的MySql作为数据库服务器,并且使用Smarty引擎来分离网站程序与前端设计代码,让建立的网站可以自由制作个性化的页面。 系统使用标签作为数据调用格式,网站前台开发人员只要简单学习系统标签功能和使用方法,将标签设置在制作的HTML模板中进行对网站数据、内容、信息等的调用,即可建设出美观、个性的网站。

下载
[Unit]
Description=My Python App
After=network.target

[Service]
Type=simple
User=deploy
WorkingDirectory=/opt/myapp
ExecStart=/usr/bin/python3 /opt/myapp/app.py
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target

启用前必须 reload,否则 enable 是假动作

改完 .service 文件后,systemd 不会自动感知。漏掉这步,systemctl enable 就只是建了个空链接,服务根本不会被加载。

  • 先重载配置:sudo systemctl daemon-reload
  • 再启用开机自启:sudo systemctl enable myapp.service
  • 立刻测试是否能手动启动:sudo systemctl start myapp.service,然后看状态:sudo systemctl status myapp.service
  • 如果报 Failed to start,别急着重启机器,先查日志:journalctl -u myapp.service -n 30 --no-pager

别信 /etc/rc.local 还能随便用

Ubuntu 20.04+、CentOS 8+ 默认已禁用 rc.local,即使你加了可执行权限、写了命令,系统启动时也大概率跳过它——这不是 bug,是 systemd 的设计取舍。

  • 它没有依赖管理,rc.local 里调的命令可能比网络、磁盘还早执行,导致失败
  • 它不提供重启策略、资源限制、日志聚合,出问题只能靠 tail -f 盲猜
  • 如果你真要用,得先手动启用:sudo systemctl enable rc-local,且确保 /etc/rc.local 第一行是 #!/bin/bash,末尾有 exit 0

除非你维护一台明确锁定在 Ubuntu 16.04 或 CentOS 6 的旧设备,否则绕开 rc.local 是最省心的选择。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
数据库三范式
数据库三范式

数据库三范式是一种设计规范,用于规范化关系型数据库中的数据结构,它通过消除冗余数据、提高数据库性能和数据一致性,提供了一种有效的数据库设计方法。本专题提供数据库三范式相关的文章、下载和课程。

374

2023.06.29

如何删除数据库
如何删除数据库

删除数据库是指在MySQL中完全移除一个数据库及其所包含的所有数据和结构,作用包括:1、释放存储空间;2、确保数据的安全性;3、提高数据库的整体性能,加速查询和操作的执行速度。尽管删除数据库具有一些好处,但在执行任何删除操作之前,务必谨慎操作,并备份重要的数据。删除数据库将永久性地删除所有相关数据和结构,无法回滚。

2093

2023.08.14

vb怎么连接数据库
vb怎么连接数据库

在VB中,连接数据库通常使用ADO(ActiveX 数据对象)或 DAO(Data Access Objects)这两个技术来实现:1、引入ADO库;2、创建ADO连接对象;3、配置连接字符串;4、打开连接;5、执行SQL语句;6、处理查询结果;7、关闭连接即可。

355

2023.08.31

MySQL恢复数据库
MySQL恢复数据库

MySQL恢复数据库的方法有使用物理备份恢复、使用逻辑备份恢复、使用二进制日志恢复和使用数据库复制进行恢复等。本专题为大家提供MySQL数据库相关的文章、下载、课程内容,供大家免费下载体验。

259

2023.09.05

vb中怎么连接access数据库
vb中怎么连接access数据库

vb中连接access数据库的步骤包括引用必要的命名空间、创建连接字符串、创建连接对象、打开连接、执行SQL语句和关闭连接。本专题为大家提供连接access数据库相关的文章、下载、课程内容,供大家免费下载体验。

329

2023.10.09

数据库对象名无效怎么解决
数据库对象名无效怎么解决

数据库对象名无效解决办法:1、检查使用的对象名是否正确,确保没有拼写错误;2、检查数据库中是否已存在具有相同名称的对象,如果是,请更改对象名为一个不同的名称,然后重新创建;3、确保在连接数据库时使用了正确的用户名、密码和数据库名称;4、尝试重启数据库服务,然后再次尝试创建或使用对象;5、尝试更新驱动程序,然后再次尝试创建或使用对象。

418

2023.10.16

vb连接access数据库的方法
vb连接access数据库的方法

vb连接access数据库方法:1、使用ADO连接,首先导入System.Data.OleDb模块,然后定义一个连接字符串,接着创建一个OleDbConnection对象并使用Open() 方法打开连接;2、使用DAO连接,首先导入 Microsoft.Jet.OLEDB模块,然后定义一个连接字符串,接着创建一个JetConnection对象并使用Open()方法打开连接即可。

438

2023.10.16

vb连接数据库的方法
vb连接数据库的方法

vb连接数据库的方法有使用ADO对象库、使用OLEDB数据提供程序、使用ODBC数据源等。详细介绍:1、使用ADO对象库方法,ADO是一种用于访问数据库的COM组件,可以通过ADO连接数据库并执行SQL语句。可以使用ADODB.Connection对象来建立与数据库的连接,然后使用ADODB.Recordset对象来执行查询和操作数据;2、使用OLEDB数据提供程序方法等等。

230

2023.10.19

pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法

本专题系统整理pixiv网页版官网入口及登录访问方式,涵盖官网登录页面直达路径、在线阅读入口及快速进入方法说明,帮助用户高效找到pixiv官方网站,实现便捷、安全的网页端浏览与账号登录体验。

660

2026.02.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 9.3万人学习

Git 教程
Git 教程

共21课时 | 3.7万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号