0
点赞
收藏
分享

微信扫一扫

linux中systemd服务介绍

吃面多放酱 2022-01-26 阅读 112

Systemd是Linux系统工具也是系统基础组件的集合用来启动守护进程。提供了一个系统和服务管理器,是系统启动的启动第一个程序、运行为 PID 1,并负责启动其它程序其中systemctl是systemd的管理控制工具

运行级别( runlevel )是一个旧的概念。现在,systemd引入了一个和运行级别功能相似又不同的概念——目标(target)。不像数字表示的启动级别,每个目标都有名字和独特的功能,并且能同时启用多个。一些目标继承其他目标的服务,并启动新服务。

Unit(配置单元):系统初始化需要做的事情非常多。需要启动后台服务,比如启动ssh服务;需要做配置工作,比如挂载文件系统。这个过程中的每一步都被 systemd 抽象为一个配置单元,即unit。配置单元可以理解成一个服务、一个挂载点、一个交换分区的配置等等,systemd将配置单元归纳为以下一些不同的类型。

1)查看默认级别
systemctl get-default

2)查看当前运行级别
runlevel or who -r

3)设置默认级别
systemctl set-default multi-user. target
(注意:修改默认启动级别时仔细检查)

4)切换运行级别
方法1. init命令init 0|1|3|5|6
方法2: systemctl命令
systemctl isolate multi-user.target
linux运行级别用的最多的是3和5
0 shutdown.target (关机)
1 energency.target (紧急救援模式)
3 multi-user.target (多用户模式/字符系统)
5 graphical.target (桌面系统/图形化界面)
6 无(重启)

5)列出所有的target(服务的集合)
systemctl list-units --type=target --all

  1. 查看系统中所有服务的启动状态
    systemctl list-unit-files (以前用chkconfig)

  2. 查看一个运行级别下面所有的unit
    list-dependencies:分析指定target各unit之间的依赖关系,如果不指明target,则表示是默认的target
    systemctl list-dependencies multi-user.target
    查看一个服务属于哪个target,只需要看[install]部分
    cat /usr/lib/systemd/system/sshd.service

8)查看哪些target引用了当前运行级别的target
systemctl list-dependencies multi-user.target --reverse / / multi-user.target被graphical.target所引用

在这里插入图片描述

举报

相关推荐

0 条评论