当前位置: 首页 > news >正文

SysVinit和Systemd的系统运行级别

Linux运行级别

  • SysVinit系统(init守护进程)Linux系统运行级别
    • SysVinit系统(init守护进程)查看Linux运行级别
    • SysVinit系统(init守护进程)修改运行级别:
  • Systemd守护进程Linux系统运行级别
    • systemd查看运行级别
      • Systemd查看系统当前运行级别
    • systemd修改运行级别
      • `multi-user.target`--文本界面的Linux系统
      • `graphical.target`--图形化界面的Linux系统
      • 查看`下次启动时`加载文本界面还是图形界面
      • 永久设置`下次启动时`加载的默认`target`
    • 切换救援与紧急模式
      • 关闭/暂停/休眠系统

SysVinit系统(init守护进程)Linux系统运行级别

Linux运行级别解释启动示例
0关机init 0
1单用户模式,只允许一个用户登录init 1
2多用户模式,不支持网络工作init 2
3文本模式,无图形化init 3
4系统预留init4
5图形化界面,Linux默认运行级别init 5
6代表重启模式,不能设置,否则系统反复重启init 6

SysVinit系统(init守护进程)查看Linux运行级别

init查看Linux系统运行级别

# init查看系统运行级别,分为0到6
chkconfig —list# 也可以查看系统运行级别
who -r# 或
runlevel 

SysVinit系统(init守护进程)修改运行级别:

# 修改运行级别
vim /etc/inittab

Systemd守护进程Linux系统运行级别

Systemd目标(target)替代了运行级别的概念,提供了更大的灵活性,如您可以继承一个已有的目标, 并添加其他服务,来创建自己的目标。下表列举了Systemd下的目标(target)常见runlevel的对应关系。

.target文件是一组systemd units(服务单元)。用于对 Unit 文件进行逻辑分组,引导其它 Unit 的执行。它替代了 SysV-init 运行级别的作用,并提供更灵活的基于特定设备事件的启动方式.

target是一个box(盒子),装了很多service(服务),也可以理解为target是一组service(服务).
tartget是由服务组成的一类启动目标,systemd可以设置启动目标.
如果systemd指定了一个target作为启动目标,那么下次启动的时候就会启动target里面的所有服务.
在这里插入图片描述

SysVinit运行级别Systemdtarget 对比:

SysVinit系统(Centos6及以下)Systemd系统(Centos7及以上)Systemd下的别名功能描述
0runlevel0.targetpoweroff.target,
shutdown.target
关闭系统。
1, s, singlerunlevel1.targetrescue.target单用户模式,只允许一个用户登录
2runlevel2.targetmulti- user.target用户定义/域特定运行级别,不支持网络工作。默认等同于3。
3runlevel3.targetmulti- user.target完全多用户(非图形化)模式。 用户可以通过多个控制台或网络登录。
4runlevel4.target保留功能未定义; 同运行级别3
5runlevel5.targetgraphical.target多用户,X11(用户图形化界面)。通常为所有运行级别3的服务+图形化登录。
6runlevel6.targetreboot.target重启系统。
emergencyemergency.target紧急Shell。

systemd查看运行级别

Systemd查看系统上的所有运行级别

# 查看当前系统所有的启动目标
systemctl list-units --type=target

在这里插入图片描述


Systemd查看系统当前运行级别

Systemd兼容SysVinit系统(init守护进程)查看运行级别命令

# Systemd查看系统当前运行级别
systemctl get-default
# 结果是文本模式

在这里插入图片描述

# SysVinit系统(init守护进程) 兼容命令
# init查看系统运行级别,分为0到6
chkconfig —list
# 也可以查看系统运行级别
who -r
# 或
runlevel 

在这里插入图片描述


systemd修改运行级别

原理: 链接至对应的运行级别即可


multi-user.target–文本界面的Linux系统

tty0tty1 默认是图形界面,临时切换文本界面后,tty0tty1变成文本界面了

# 永久设置文本界面启动
systemctl set-default multi-user.target# 改变当前系统的目标,重启不保存
# 临时切换到`文本界面`
systemctl isolate multi-user.target
# 需要等待几分钟

graphical.target–图形化界面的Linux系统

# 改变系统默认的启动目标,重启保存
# 永久设置图形化界面启动
systemctl set-default graphical.target# 改变当前系统的目标,重启不保存
# 临时切换到`图形化界面`
systemctl isolate graphical.target
# 需要等待几分钟

查看下次启动时加载文本界面还是图形界面

# 查看默认启动的启动目标
# 查看`下次启动时`加载的默认Linux界面`target`
systemctl get-default 

在这里插入图片描述


永久设置下次启动时加载的默认target

# 永久改变系统默认的启动目标,重启后依然保持
systemctl set-default ${target名称}

切换救援与紧急模式

# 改变当前系统为救援模式
systemctl rescue

这条命令和“systemctl isolate rescue.target”类似。命令执行后会在串口如下打印信息:

> You are in rescue mode. After logging in, type "journalctl -xb" to viewsystem logs, "systemctl reboot" to reboot, "systemctl default" or "exit"to boot into default mode.> Give root password for maintenance> (or press Control-D to continue):
# 改变当前系统为紧急模式
systemctl emergency

这条命令和“systemctl isolate emergency.target”类似。命令执行后会在串口如下打印信息:

> You are in emergency mode. After logging in, type "journalctl -xb" to viewsystem logs, "systemctl reboot" to reboot, "systemctl default" or "exit"to boot into default mode.> Give root password for maintenance> (or press Control-D to continue):

用户需要重启系统,才能从救援模式或者紧急模式进入正常模式


关闭/暂停/休眠系统

Systemd通过Systemctl命令可以对系统进行关机重启休眠等一系列操作。当前仍兼容部分Linux常用管理命令,对应关系如下表。建议用户使用systemctl命令进行操作。

Linux常用管理命令systemctl命令描述
haltsystemctl halt关闭系统但不关闭电源)
poweroffsystemctl poweroff关闭系统并关闭电源
rebootsystemctl reboot重启

执行上述命令会给当前所有的登录用户发送一条提示消息。

# --no-wall 执行关机命令时,禁止systemd通知用户
systemctl --no-wall poweroff

待机休眠

# 使系统待机
systemctl suspend# 使系统休眠
systemctl hibernate# 使系统待机且处于休眠状态
systemctl hybrid-sleep

http://www.mrgr.cn/news/95484.html

相关文章:

  • C语言入门教程100讲(6)类型修饰符
  • Fourier-Lerobot——把斯坦福人形动作策略iDP3封装进了Lerobot(含我司七月人形研发落地实践)
  • 【算法工程】大模型开发之windows环境的各种安装
  • 操作系统之进程控制
  • Ceph集群2025(Squid版)快速对接K8S cephFS文件存储
  • 数字证书 与 数字签名 介绍
  • [C++游戏开发基础]:构造函数浅析,8000+字长文
  • 有序数组双指针问题
  • Ciura序列
  • C++::多态
  • Linux笔记---文件系统软件部分
  • 基于 Vue 3 的PDF和Excel导出
  • 干货!三步搞定 DeepSeek 接入 Siri
  • 单播、广播、组播和任播
  • 【通过Groovy去热修复线上逻辑】1.执行线上数据修复 2.写工具
  • STM32__红外避障模块的使用
  • Cursor从小白到专家
  • Jupyter Notebook 常用命令(自用)
  • 动态规划入门详解
  • DeepSeek本地搭建