news 2026/8/29 8:46:01

Linux开机自启动systemd配置

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Linux开机自启动systemd配置

为什么需要systemd

在 Linux 系统中,确保关键服务能够在系统启动时自动运行是一项非常重要的任务。尤其是在服务器环境中,我们希望一些服务(比如服务器上部署的java应用)能够在系统每次启动后自动启动,从而确保业务的持续运行。在 Linux 中,常用的服务管理系统有两种:systemdsysvinit。本篇文章摘自网络,只做个人笔记记录备忘。

systemd是 Linux 的一种系统和服务管理器,负责系统的引导过程,管理系统运行时的服务,并提供许多系统功能,如日志、时间同步等。它通过服务单元文件(通常为.service文件)来定义和管理服务,并提供强大的依赖管理和并行启动功能。

systemd 常用命令

(1)systemctl status <service-name>

可以使用systemctl status <service-name>来判断指定服务是否加入到systemd自启动。

(2)systemctl enable <service-name>

设置指定服务开启自启动

(3)启动服务

systemctl start <service_name>

(4)停止服务

systemctl stop<service_name>;注意不能用kill -9,自启动会将服务再次启动的

创建自定义的systemd服务

1 创建服务单元文件

systemd服务通过服务单元文件(.service文件)来管理。首先,你需要在/etc/systemd/system/或/usr/lib/systemd/system目录中创建一个新的服务文件。例如,创建一个名为myservice.service的文件

2 服务单元文件配置

[Unit] Description=My Custom Service After=network.target [Service] ExecStart=/path/to/your/program --argument Restart=always User=youruser Group=yourgroup [Install] WantedBy=multi-user.target

解释:

  • [Unit]:定义服务的描述和依赖。After=network.target表示该服务会在网络启动后启动。
  • [Service]:定义服务的启动命令、重启策略、运行用户等。ExecStart是服务启动时执行的命令。
  • [Install]:定义服务在哪个运行级别下启动。multi-user.target表示该服务将在多用户模式下启动。

比如一个java应用的配置如下:

[Unit] Description=template After=network.target [Service] Type=forking WorkingDirectory=/opt/myjava/ ExecStart=/opt/myjava/servicectl.sh start 2048m ExecReload=/opt/myjava/servicectl.sh restart 2048m ExecStop=/opt/myjava/servicectl.sh stop PrivateTmp=true Restart=on-failure [Install] WantedBy=multi-user.target

其中servicectl.sh是自定义的服务启动脚本
#!/bin/sh
./service.sh $1 `ls *.jar` $2

注意:这种写法当前目录只能有一个java的jar包。

3 重新加载systemd配置

执行systemctl daemon-reload 命令重新加载systemd配置。

参考:https://cloud.tencent.com/developer/article/2587808

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/26 11:55:55

打开COMSOL看到电磁波模块就手痒?今天拿介质圆柱散射练练手。先搞个半径5μm的氧化铝圆柱(ε_r=9.8),扔到532nm激光里会发生啥?咱们边操作边唠嗑

COMSOL介质圆柱散射效率分析。 也可分析散射截面&#xff0c;消光截面与吸收截面。建模时直接在几何里画个圆&#xff0c;边界条件记得套两层&#xff1a;里面是散射边界&#xff08;别让波反射回来捣乱&#xff09;&#xff0c;外面包个完美匹配层。材料库调出氧化铝参数时注意…

作者头像 李华
网站建设 2026/8/27 16:51:04

当C#遇上工业PLC:手撕多品牌通讯源码实录

C#与三菱&#xff0c;西门子&#xff0c;台达&#xff0c;基恩士&#xff0c;等各品牌plc通讯源码。搞过工控的老铁都知道&#xff0c;PLC通讯就像和不同方言的人聊天——三菱说MC协议&#xff0c;西门子玩S7&#xff0c;台达可能掏出Modbus&#xff0c;基恩士说不定甩个自定义…

作者头像 李华
网站建设 2026/8/21 16:52:06

零基础秒变分析高手!覆盖7大行业的超全模版中心来了

每天打开后台&#xff0c;五花八门的用户数据堆得满满当当&#xff0c;手上的需求还没收尾&#xff0c;新的需求已经排着队找上门&#xff1b;熬夜赶出来的报表写满了&#xff0c;却迟迟找不到问题所在……“数据报表越做越厚&#xff0c;业务洞察却越来越慢”——这或许是许多…

作者头像 李华
网站建设 2026/8/25 2:04:36

适者生存的淘汰逻辑

COA-SVM&#xff1a;土狼优化算法优化SVM&#xff1a;COA-SVM。2018提出一种用于全局优化的自然启发式算法&#xff0c;可以用来写在机器学习炼丹房里&#xff0c;总有些传统算法需要点"野性"才能爆发真正实力。今天咱们聊聊怎么让土狼群撕开SVM参数优化的困局——这…

作者头像 李华
网站建设 2026/8/24 9:25:26

全面讲解如何测试与调试数据库触发器

如何真正掌控数据库触发器&#xff1a;从测试到调试的实战全解在现代系统开发中&#xff0c;有一个“低调却致命”的组件&#xff0c;它不显山露水&#xff0c;却能在关键时刻决定数据是否一致、事务能否提交、甚至整个服务会不会雪崩——那就是数据库触发器。你可能已经用它来…

作者头像 李华
网站建设 2026/8/21 16:51:58

测试反馈驱动的性能调优体系:AI根因分析与性能数字孪生集成

测试反馈驱动的性能调优全景图一、测试反馈的核心价值维度问题定位三角模型性能基线数据&#xff1a;响应时间>2s的接口占比&#xff08;示例&#xff1a;电商结算页30%超时&#xff09;资源瓶颈图谱&#xff1a;CPU密集型服务线程池过载&#xff08;实测80%线程阻塞&#x…

作者头像 李华