news 2026/4/15 19:40:15

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/3/24 16:13:00

最近在车间调试西门子S7-1200控制四轴伺服的设备,顺手整理了一套实战程序。这套程序里藏着伺服控制的十八般武艺,今天咱们边拆边聊

西门子S7-1200控制四轴伺服程序案例&#xff1a; 1.内容涵盖伺服&#xff0c;步进点动&#xff0c;回原&#xff0c;相对定位&#xff0c;绝对定位&#xff0c;速度模式控制&#xff01;特别适合学习伺服和步进的朋友们&#xff01;PTO伺服轴脉冲定位控制速度模式控制扭矩模式&…

作者头像 李华
网站建设 2026/3/22 6:15:19

MDIN380 SDI转VGA 转LVDS VGA转SDI 高清视频处理 MDIN380芯片 ...

MDIN380 SDI转VGA 转LVDS VGA转SDI 高清视频处理 MDIN380芯片 PCB代码方案资料 3G-SDI转VGA ?3G-SDI转LVDS ?高清视频 MDIN380、GV7601 芯片方案(PCB图和源码)。 此方案是韩国视频处理芯片MDIN380的整合应用方案。 3G-SDI转VGA或3G-SDI转LVDS。 方案共有两块电路板(一块底板…

作者头像 李华
网站建设 2026/4/5 23:40:43

三菱PLC步进电机开闭环控制系统源码解析与实现

三菱plc步进电机开闭环控制系统软件工程文件源码工控玩家最爱的干货来了&#xff01;今天咱们直接拆解三菱FX系列PLC的步进电机控制程序。开环模式用PLSY指令甩脉冲&#xff0c;闭环模式玩高速计数反馈&#xff0c;手把手带你看懂梯形图里的门道。开环控制的核心就藏在下面这段…

作者头像 李华
网站建设 2026/4/14 3:44:01

三轴V90 PN与SMART200玩转指南

西门子smart200和3轴v90 pn网络通讯 西门子smart200和v90 pn通讯控制3轴伺服程序&#xff0c;触摸屏程序&#xff0c;详细注释&#xff0c;控制系统详细说明书&#xff0c;文档详细讲解组态和指令&#xff0c;IO表&#xff0c;电气原理图前两天车间里刚搞完一套三轴伺服控制系…

作者头像 李华