[Linux][教程][实用系列]Linux使用systemctl添加自启动程序

1. 编写*.service文件

1.1 systemctl启动服务分类

1.1.1 用户类

此类下必须开机登陆之后,里面的程序才会运行

需要添加.service文件到/usr/lib/systemd/user

1.1.2 系统类

此类下开机不登陆就可以运行

需要添加.service文件到/usr/lib/systemd/user

1.2 文件模板

首先在’系统类’创建一个新文件

sudo vim /usr/lib/systemd/system/<name>.service

把如下模板稍作修改复制进去

[Unit]
# Description:运行软件描述
Description=imut_muye_service
# Documentation:软件的文档
# Documentation=
# After:因为软件的启动通常依赖于其他软件,这里是指定在哪个服务被启动之后再启动,设置优先级
After=network.target
# Requires:强依赖某个服务,目标服务的状态可以决定本软件运行。
# Requires=
 
[Service]
# ExecStart:执行的命令,可以直接是命令也可以是sh文件
ExecStart=/home/imut/Projects/imut_muye/dist/main
# ExecStop:停止执行命令
#ExecStop=/bin/kill -s TERM $MAINPID
# ExecReload:重启时的命令
ExecReload=/home/imut/Projects/imut_muye/dist/main
# Type:软件运行方式,默认为simple
Type=simple
# WorkingDirectory:工作的目录环境
WorkingDirectory=/home/imut/Projects/imut_muye/dist
 
[Install]
# WantedBy:这里相当于设置软件,选择运行在linux的哪个运行级别,只是在systemd中不在有运行级别概念,但是这里权当这么理解。 
WantedBy=multi-user.target

2. 重载守护程序

sudo systemctl daemon-reload

3. 启动程序测试是否正常

sudo systemctl start imut_muye.service

查看状态

sudo systemctl status imut_muye.service

出现类似返回则正常

imut_muye.service - imut_muye_service
     Loaded: loaded (/lib/systemd/system/imut_muye.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2023-07-21 18:44:14 CST; 24s ago

4. 允许自动启动

sudo systemctl enable imut_muye.service

5. 附录

常用的systemctl命令:

启动sshd服务:systemctl start ssh.service
停止sshd服务:systemctl stop ssh.service
查看sshd服务状态:systemctl status ssh.service
重启sshd服务:systemctl restart ssh.service
设置开机自启动:systemctl enable ssh.service
禁止开机自启动:systemctl disable ssh.service
查看所有已经启动的服务:systemctl list-units --type=service
重新加载配置文件:systemctl daemon-reload

6. 参考

systemctl开机启动设置_每次开机都需要运行systemctl daeom-reload_枫叶的博客-CSDN博客

Linux使用systemctl设置程序开机自启动_linux开机自启动命令_sayyy的博客-CSDN博客

【linux】使用systemctl start xxx启动自己的程序|开机启动|守护进程_bandaoyu的博客-CSDN博客

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值