centos8使用systemctl管理运行级别
一,什么是systemd的target?
1,关于systemd/systemctl的相关知识,请移步到这一篇
https://www.cnblogs.com/architectforest/p/12678142.html
2,Target 就是一个 Unit 组,包含许多相关的 Unit
启动某个 Target 的时候,Systemd 就会启动里面所有的 Unit
可以理解成init的runlevel
3,systemd类似运行级别的target有哪些?
poweroff.target (相当于runlevel 0) 关闭电源
rescue.target (相当于runlevel 1) 急救
multi-user.target (相当于runlevel 3) 多用户命令行
graphical.target(相当于runlevel 5) 图形界面
reboot.target(相当于runlevel 6) 重启
说明:刘宏缔的架构森林是一个专注架构的博客,地址:https://www.cnblogs.com/architectforest
对应的源码可以访问这里获取: https://github.com/liuhongdi/
说明:作者:刘宏缔 邮箱: 371125307@qq.com
二,target相关的目录
1,默认的 RunLevel,位置是 /etc/systemd/system/default.target
它是一个符号链接,链接会链接到graphical.target(图形界面)或者multi-user.target(多用户命令行)
2,当设置一个unit为开机自启动时,可以看到:
是为它创建符号链接到当前的target的对应目录下:
例如: /etc/systemd/system/multi-user.target.wants
例子:
[root@blog ~]# systemctl enable mysqld.service
Created symlink /etc/systemd/system/multi-user.target.wants/mysqld.service → /usr/lib/systemd/system/mysqld.service.
例子:查看multi-user.target下自动启动的服务:
[root@blog ~]# ll /etc/systemd/system/multi-user.target.wants
默认的 RunLevel(在 /etc/inittab 文件设置)现在被默认的 Target 取代,
位置是 /etc/systemd/system/default.target,
通常符号链接到graphical.target(图形界面)或者multi-user.target(多用户命令行)
例子:
[root@blog ~]# ll /etc/systemd/system/default.target
lrwxrwxrwx. 1 root root 37 Dec 25 11:33 /etc/systemd/system/default.target -> /lib/systemd/system/multi-user.target
三,查看默认的运行级别
[root@blog ~]$ systemctl get-default
multi-user.target
在另外一台图形界面的centos上查看
[root@centos8 ~]$ systemctl get-default
graphical.target
四,不重启机器而切换当前的运行级别
#isolate 用于切换当前的运行级别
#切换到multi-user.target(命令行界面)
[root@centos8 ~]$ systemctl isolate multi-user.target
#切换到graphical.target(图形界面)
[root@centos8 ~]$ systemctl isolate graphical.target
五,查看当前的运行级别:
1,切换到命令行界面
[root@centos8 liuhongdi]# systemctl isolate multi-user.target
2,用runlevel查看当前的运行级别:
[root@centos8 liuhongdi]# runlevel
5 3
说明:5是前一个运行级别
3是当前的运行级别
3,也可以用who -r命令
[root@centos8 liuhongdi]# who -r
run-level 3 2020-04-07 16:44 last=5
run-level 是当前的运行级别
last是上一个运行级别
六,修改默认的运行级别target
1,修改默认的运行级别:
#set-default 用来指定默认的运行级别
[root@centos8 ~]# systemctl set-default multi-user.target
Removed /etc/systemd/system/default.target.
Created symlink /etc/systemd/system/default.target → /usr/lib/systemd/system/multi-user.target.
说明:我们可以看到:set-default 所做的操作:
把/usr/lib/systemd/system/multi-user.target创建符号链接到/etc/systemd/system/default.target
2,查看修改是否成功:
[root@centos8 ~]# systemctl get-default
multi-user.target
3,修改成功后重启可以看到效果
七,查看一个运行级别下面所有的unit
1,
# list-dependencies: 分析指定target各unit之间的依赖关系,如果不指明target,则表示是默认的target
[root@blog ~]# systemctl list-dependencies multi-user.target
multi-user.target
● ├─aegis.service
● ├─aliyun.service
● ├─atd.service
● ├─auditd.service
● ├─chronyd.service
● ├─crond.service
● ├─dbus.service
● ├─dnf-makecache.timer
● ├─ecs_mq.service
● ├─irqbalance.service
● ├─libstoragemgmt.service
● ├─mcelog.service
● ├─mdmonitor.service
说明: 各个service前的黑色圆点,如果是绿色,表示正在运行中,active
如果是黑色,表示是inactive
2,查看哪些target引用了当前运行级别的target
#--reverse
[root@blog ~]# systemctl list-dependencies multi-user.target --reverse
multi-user.target
● └─graphical.target
multi-user.target被graphical.target所引用
八,systemctl与关机/重启相关的命令
1,关闭cpu,但未关闭电源
[root@blog ~]# systemctl halt
2,关闭电源
[root@blog ~]# systemctl poweroff
建议使用这个,这个会真正关闭电源
3,重启机器
[root@blog ~]# systemctl reboot
九,列出系统中包含的所有target
[root@blog ~]# systemctl list-unit-files --type=target
十,查看centos的版本
[root@blog ~]$ cat /etc/redhat-release
CentOS Linux release 8.0.1905 (Core)
centos8使用systemctl管理运行级别的更多相关文章
- linux(centos8):用systemctl管理war包形式的jenkins(java 14 / jenkins 2.257)
一,如何安装jenkins? 参见: https://www.cnblogs.com/architectforest/p/13685904.html 说明:刘宏缔的架构森林是一个专注架构的博客,地址: ...
- RHEL 6 和 RHEL 7 的一些有关运行级别,服务管理,服务启动等方面的区别介绍
systemd是7中的新命令组,集成了service和chkconfig的功能.system命令可参考:https://www.cnblogs.com/ray-bk/p/10415173.html 运 ...
- systemd的运行级别与服务管理命令简介
从很久很久以前我们就在使用静态运行级别.而systemd提供了更为动态灵活的机制,来管控你的系统. 在开始介绍systemd命令前,让我们先简单的回顾一下历史.在Linux世界里,有一个很奇怪的现象, ...
- 第14章 Linux启动管理(1)_系统运行级别
1. CentOS 6.x 启动管理 (1)系统运行级别 ①运行级别 运行级别 含义 0 关机 1 单用户模式,可以想象为Windows的安全模式,主要用于系统修复.(但不是Linux的安全模式) 2 ...
- CentOS7.5下开发systemctl管理的自定义Nginx启动服务程序
一.systemctl知识简介 从CentOS7 Linux开始,系统里的网络服务启动已经从传统的service改成了systemctl(一个systemd工具,主要负责控制systemd系统和服务管 ...
- 为什么说Ubuntu的运行级别为2
继上一篇文章http://www.cnblogs.com/EasonJim/p/7163069.html深入研究了Linux的运行级别之后,发现网上大部分都说Ubuntu的运行级别默认为2,那么下面就 ...
- Linux:检查当前运行级别的五种方法
运行级就是Linux操作系统当前正在运行的功能级别.存在七个运行级别,编号从0到6.系统可以引导到任何给定的运行级别.运行级别由数字标识. 每个运行级别指定不同的系统配置,并允许访问不同的进程组合.默 ...
- Linux 服务控制与运行级别
如何控制服务的运行状态?如何切换不同的运行级别? 服务控制 ntsysv 仿图形交互界面,集中配置各种服务启动状态 --level 35:同时对指定运行级别中的服务进行管理,不加仅管理当前运行级别中的 ...
- RHEL7使用systemctl管理服务
1. systemctl命令 说明 systemctl start [unit type] 启动服务 systemctl stop [unit type] 停止服务 syste ...
随机推荐
- tsconfig.json无法写入webpack.config.js 因为它会覆盖输入文件。
这个错误是什么意思?为什么要写入这个文件?即使我将该文件从项目中排除,该错误仍然存在.我该如何纠正这一点? 我将webpack.config.js文件删除,问题仍然存在. 解决方法: 如果未指定e ...
- 猜数字 python 3
随机选取一个1-100的整数 通过5次机会猜整数 会提醒猜大或者猜小 当猜对或者已经猜过5次后结束游戏
- Git | Git入门,成为项目管理大师(一)
大家好,周一我们迎来了一个新的专题--git. 写这个专题的初衷有两点,第一点是觉得好像很少有公众号提到git相关的技术,可能是觉得太基础了看不上.但实际上git非常重要,在我们实际的开发工作当中使用 ...
- 鸿蒙真的是套壳吗?HarmonyOS应用开发初体验,Java原生和JavaScript的mvvm开发
初探寻鸿蒙os的应用开发 本期视频已发布到bilibili 注意是应用开发,没错码农(应用开发)一般关注这个就行了 IDE 点击应用开发以后,点击链接下载IDE,DevEco Studio是基于IDE ...
- manacher(马拉车算法)
Manacher(马拉车算法) 序言 mannacher 是一种在 O(n)时间内求出最长回文串的算法 我们用暴力求解最长回文串长度的时间复杂度为O(n3) 很明显,这个时间复杂度我们接受不了,这时候 ...
- java 单例模式的几种写法
一.懒汉式 public class Singleton{ private static Singleton instance = null; private Singleton(){} public ...
- 运行时数据区--程序计数器(PC Register)
程序计数器(PC Register) 这里的计数器(Program Counter Register)并非为广义上所指的物理寄存器,JVM中的PC寄存器(程序计数器)是对物理PC寄存器的一种抽象模拟, ...
- JVM学习(六)JVM常见知识问答
文章更新时间:2020/04/21 1.什么是Java虚拟机?为什么Java被称作是"平台无关的编程语言"? Java虚拟机是一个可以执行Java字节码的虚拟机进程. Java源文 ...
- 基础篇:JAVA资源之IO、字符编码、URL和Spring.Resource
目录 1 JAVA.IO字节流 2 JAVA.IO字符流 3 乱码问题和字符流 4 字符集和字符编码的概念区分 5 URI概念的简单介绍 6 URL概念及与URL的区别 7 Spring.Resour ...
- zookeeper 笔记--curator分布式锁
使用ZK实现分布式独占锁, 原理就是利用ZK同级节点的唯一性. Curator框架下的一些分布式锁工具InterProcessMutex:分布式可重入排它锁 InterProcessSemaphore ...