Ubuntu下开机自启动脚本 init supervisor systemd

本文详细介绍在Ubuntu系统下,使用systemd进行应用程序自启动管理的方法。包括开机自启动、批量管理和出错重启等功能,对比init和supervisor的不同,深入解析systemd的配置与使用。

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

引言:在linux的使用过程中,我们经常会碰到需要将某个自定义的应用程序设置为开机自启动、批量管理、出错重启等,今天我们就Ubuntu下软件的自启动相关只是做一个汇总。

首先,Ubuntu下开机自启动管理方法有多种,比如基于 1) init 、2) supervisor、 3) systemd

init supervisor systemd
性质 系统层面 Python 编写的应用程序 系统管理
易用性 ★☆☆☆☆ ★★★★★ ★★★☆☆
稳定性 - - -
依赖 -

init

在centos5、centos6中,linux的启动一直采用init进程来进行管理。从centos7开始,放弃了采用init进程,从而使用systemd来代替init进程。
对于init进程来说有两个缺点:

  • 启动时间长。init进程是串行启动,只有前一个进程启动完,才会启动下一个进程。
  • 启动脚本复杂。init进程只是执行启动脚本,不管其他事情。脚本需要自己处理各种情况,这往往使得脚本变得很长。

supervisor

优点

  • 任何用户都可以管理进程,不需要成为超级用户;
  • 具有良好的web界面来管理流程;
  • 适用于任何系统发行版,无论老版本还是新版本;
  • 更灵活的管理过程(例如:组,顺序优先级);

systemd

优点

  • 如今的发行版本都在系统中内置了 systemd,不需要额外的安装依赖。
  • 易于使用,没有学习曲线,可以像系统服务一样进行管理。

使用

unit

systemd管理着许多的资源,可以认为每一个资源就是unit(单元)unit由其相关的配置文件进行标识、识别和配置;文件中主要包含了系统服务、监听的socket、保存的快照以及其他与init相关的信息。这些配置文件主要保存在

/etc/systemd/system  # 存放系统启动的默认级别及启动的unit的软连接,优先级最高。

/run/systemd/system,# 系统执行过程中产生的服务脚本,优先级次之。

/usr/lib/systemd/system # 存放系统上所有的启动文件。优先级最低

Systemd 默认从目录 /etc/systemd/system/读取配置文件。但是,里面存放的大部分文件都是符号链接,指向目录 /usr/lib/systemd/system/,真正的配置文件存放在这个个目录。

unit常见类型
类型 解释
service unit 文件扩展名为.service ,用于定义系统服务
target unit 文件扩展名为.target ,用于模拟实现"运行级别"
device unit 文件扩展名为.device ,用于定义内核识别的设备
mount unit 文件扩展名为.mount ,定义文件系统挂载点
sokect unit 文件扩展名为.socket ,用于标识进程间通信用到的socket文件
snapshot unit 文件扩展名为.snapshot ,用于实现管理系统快照
swap unit 文件扩展名为.swap ,用于标识swap设备
automount unit 文件扩展名为.automount ,文件系统自动挂载点设备
path unit 文件扩展名为.path ,用于定义文件系统中的文件和目录
管控unit单元
启动、停止、重启等服务(service类型)
#启动httpd服务
[root@bogon ~]# systemctl start httpd.service

#停止httpd服务
[root@bogon ~]# systemctl stop httpd.service

#重启httpd服务
[root@bogon ~]# systemctl restart httpd.service

#条件式重启httpd服务(只会在服务运行的时候才会重启服务)
[root@bogon ~]# systemctl try-restart httpd.service

#重新加载httpd服务的配置文件
[root@bogon ~]# systemctl reload httpd.service

查看 Unit 的状态
[root@bogon ~

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

或许,这就是梦想吧!

如果对你有用,欢迎打赏。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值