CentOS 7/8修改系统运行级别

 

CentOS 5、 CentOS 6可以通过修改配置文件/etc/inittab 参数,从而修改系统运行级别,切换系统的runlevel,但是从CentOS 7开始,不能用这个命令了,只能由systemd统一管理,并且减少到了两个等级(当然这里不包含poweroff.target、reboot.target等)。/etc/inittab中也明确inittab不再使用了。

CentOS 7下的inittab文件

注意:”systemd uses 'targets' instead of runlevels. By default, there are two main targets“这条信息

[root@db-server ~]# more /etc/inittab

# inittab is no longer used when using systemd.

#

# ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.

#

# Ctrl-Alt-Delete is handled by /usr/lib/systemd/system/ctrl-alt-del.target

#

# systemd uses 'targets' instead of runlevels. By default, there are two main targets:

#

# multi-user.target: analogous to runlevel 3

# graphical.target: analogous to runlevel 5

#

# To view current default target, run:

# systemctl get-default

#

# To set a default target, run:

# systemctl set-default TARGET.target

#

CentOS 8下的inittab文件

注意:”systemd uses 'targets' instead of runlevels. By default, there are two main targets“这条信息

[root@kerrydb ~]# cat /etc/inittab

# inittab is no longer used.

#

# ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.

#

# Ctrl-Alt-Delete is handled by /usr/lib/systemd/system/ctrl-alt-del.target

#

# systemd uses 'targets' instead of runlevels. By default, there are two main targets:

#

# multi-user.target: analogous to runlevel 3

# graphical.target: analogous to runlevel 5

#

# To view current default target, run:

# systemctl get-default

#

# To set a default target, run:

# systemctl set-default TARGET.target

系统运行级别都定义在/lib/systemd/system下:

[root@db-server ~]# ll /usr/lib/systemd/system/runlevel*

lrwxrwxrwx. 1 root root 15 Aug  2 00:11 /usr/lib/systemd/system/runlevel0.target -> poweroff.target

lrwxrwxrwx. 1 root root 13 Aug  2 00:11 /usr/lib/systemd/system/runlevel1.target -> rescue.target

lrwxrwxrwx. 1 root root 17 Aug  2 00:11 /usr/lib/systemd/system/runlevel2.target -> multi-user.target

lrwxrwxrwx. 1 root root 17 Aug  2 00:11 /usr/lib/systemd/system/runlevel3.target -> multi-user.target

lrwxrwxrwx. 1 root root 17 Aug  2 00:11 /usr/lib/systemd/system/runlevel4.target -> multi-user.target

lrwxrwxrwx. 1 root root 16 Aug  2 00:11 /usr/lib/systemd/system/runlevel5.target -> graphical.target

lrwxrwxrwx. 1 root root 13 Aug  2 00:11 /usr/lib/systemd/system/runlevel6.target -> reboot.target

 

/usr/lib/systemd/system/runlevel1.target.wants:

total 0

lrwxrwxrwx. 1 root root 39 Aug  2 00:11 systemd-update-utmp-runlevel.service -> ../systemd-update-utmp-runlevel.service

 

/usr/lib/systemd/system/runlevel2.target.wants:

total 0

lrwxrwxrwx. 1 root root 39 Aug  2 00:11 systemd-update-utmp-runlevel.service -> ../systemd-update-utmp-runlevel.service

 

/usr/lib/systemd/system/runlevel3.target.wants:

total 0

lrwxrwxrwx. 1 root root 39 Aug  2 00:11 systemd-update-utmp-runlevel.service -> ../systemd-update-utmp-runlevel.service

 

/usr/lib/systemd/system/runlevel4.target.wants:

total 0

lrwxrwxrwx. 1 root root 39 Aug  2 00:11 systemd-update-utmp-runlevel.service -> ../systemd-update-utmp-runlevel.service

 

/usr/lib/systemd/system/runlevel5.target.wants:

total 0

lrwxrwxrwx. 1 root root 39 Aug  2 00:11 systemd-update-utmp-runlevel.service -> ../systemd-update-utmp-runlevel.service

从上图可以看到runlevel2.target、runlevel3.target、runlevel4.target 这些软连接都是指向multi-user.target

[root@kerrydb ~]# ll /usr/lib/systemd/system/runlevel*

lrwxrwxrwx. 1 root root 15 Apr 24 11:53 /usr/lib/systemd/system/runlevel0.target -> poweroff.target

lrwxrwxrwx. 1 root root 13 Apr 24 11:53 /usr/lib/systemd/system/runlevel1.target -> rescue.target

lrwxrwxrwx. 1 root root 17 Apr 24 11:53 /usr/lib/systemd/system/runlevel2.target -> multi-user.target

lrwxrwxrwx. 1 root root 17 Apr 24 11:53 /usr/lib/systemd/system/runlevel3.target -> multi-user.target

lrwxrwxrwx. 1 root root 17 Apr 24 11:53 /usr/lib/systemd/system/runlevel4.target -> multi-user.target

lrwxrwxrwx. 1 root root 16 Apr 24 11:53 /usr/lib/systemd/system/runlevel5.target -> graphical.target

lrwxrwxrwx. 1 root root 13 Apr 24 11:53 /usr/lib/systemd/system/runlevel6.target -> reboot.target

 

/usr/lib/systemd/system/runlevel1.target.wants:

total 0

 

/usr/lib/systemd/system/runlevel2.target.wants:

total 0

 

/usr/lib/systemd/system/runlevel3.target.wants:

total 0

 

/usr/lib/systemd/system/runlevel4.target.wants:

total 0

 

/usr/lib/systemd/system/runlevel5.target.wants:

total 0

通过命令来查看运行级别:

 

# systemctl get-default  # 查看默认运行级别

# runlevel

通过命令来设置运行级别:

 

 

systemd命令修改:

#systemctl set-default TARGET.target

 

修改软连接方式:

 

# ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target

 

测试例子如下:

例1:

[root@db-server tmp]# systemctl set-default graphical.target

Removed symlink /etc/systemd/system/default.target.

Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/graphical.target.

[root@db-server tmp]# 

例2:

[root@kerrydb ~]# systemctl get-default

graphical.target

[root@kerrydb ~]# runlevel

N 5

[root@kerrydb ~]# 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.

[root@kerrydb ~]# systemctl get-default

multi-user.target

[root@kerrydb ~]# 

例3:

[root@kerrydb ~]# systemctl get-default

multi-user.target

[root@kerrydb ~]# ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target

[root@kerrydb ~]# systemctl get-default

multi-user.target

[root@kerrydb ~]# ln -sf /lib/systemd/system/runlevel3.target /etc/systemd/system/default.target

[root@kerrydb ~]# systemctl get-default

multi-user.target

# 可设置的运行级别

runlevel0.target -> poweroff.target

runlevel1.target -> rescue.target

runlevel2.target -> multi-user.target

runlevel3.target -> multi-user.target

runlevel4.target -> multi-user.target

runlevel5.target -> graphical.target

runlevel6.target -> reboot.target

修改后需要重启服务器才能生效。否则只对当前连接生效。

CentOS 7/8修改系统运行级别的更多相关文章

  1. aix 系统运行级别

    运行级别 在操作系统上运行维护之前,或者修改系统运行级别之前,需检查各种不同的运行级别.运行级别是一个软件配置,只允许一组选定的进程存在. 识别系统运行级别 本节描述如何识别系统正运行在什么样的运行级 ...

  2. Centos修改默认运行级别

    一.centos默认运行级别 下面是linux的默认运行级别.vim /etc/inittab即可查看. # Default runlevel. The runlevels used are: # - ...

  3. linux 系统运行级别及修改[转]

    Linux运行级别从0-6,共7个. 0:关机.不能将系统缺省运行级别设置为0,否则无法启动. 1:单用户模式,只允许root用户对系统进行维护. 2:多用户模式,但不能使用NFS(相当于Window ...

  4. 第14章 Linux启动管理(1)_系统运行级别

    1. CentOS 6.x 启动管理 (1)系统运行级别 ①运行级别 运行级别 含义 0 关机 1 单用户模式,可以想象为Windows的安全模式,主要用于系统修复.(但不是Linux的安全模式) 2 ...

  5. Linux系统——运行级别

    学习之前先了解下Linux系统的运行级别和其原理,博主使用的是Linux系统中的Redhat9.0版本,之后的学习也是基于这个系统版本. Linux系统的7个运行级别(runlevel) 运行级别0: ...

  6. Linux系统运行级别配置

    Linux的运行级别 Linux的运行级别有七种,可以通过查看/etc/inittab文件进行了解: Level0:系统停机状态,默认系统运行级别不能设置为0,否则系统不能正常启动: Level1:单 ...

  7. CentOS统的7个运行级别的含义

    原文: http://blog.csdn.net/liansehai/article/details/45370965 CentOS系统有7个运行级别(runlevel) 运行级别就是操作系统当前正在 ...

  8. Linux学习笔记(六)Linux常用命令:关机、重启以及系统运行级别

    一.shutdown命令 shutdown [选项] [时间] 常用选项 -c 取消前一个关机命令 -h 关机 -r 重启 shutdown命令关机或重启会保存当前系统正在使用的资源,因此关机或重启最 ...

  9. Linux学习--第十三天--日志、系统运行级别、grub加密

    日志 rsyslogd取代了syslogd. /var/log/cron #定时任务相关日志 /var/log/cups #打印信息相关日志 /var/log/dmesg #开机内核自检相关日志,dm ...

随机推荐

  1. 解决 SQLException: Value '0000-00-00 00:00:00' can not be represented as java.sql.Timestamp的问题

    连接数据库时 设置:zeroDateTimeBehavior=convertToNull

  2. 【模式识别与机器学习】——最大似然估计 (MLE) 最大后验概率(MAP)和最小二乘法

    1) 极/最大似然估计 MLE 给定一堆数据,假如我们知道它是从某一种分布中随机取出来的,可是我们并不知道这个分布具体的参,即“模型已定,参数未知”.例如,我们知道这个分布是正态分布,但是不知道均值和 ...

  3. 强化学习 3—— 使用蒙特卡洛采样法(MC)解决无模型预测与控制问题

    一.问题引入 回顾上篇强化学习 2 -- 用动态规划求解 MDP我们使用策略迭代和价值迭代来求解MDP问题 1.策略迭代过程: 1.评估价值 (Evaluate) \[v_{i}(s) = \sum_ ...

  4. Python中ansible的使用

    #!/usr/bin/env python # -*- coding: utf8 -*- # @Author: huangmanyao from ansible import constants fr ...

  5. 程序流程结构——if语句

    c语言支持最基本的三种运行结构: 顺序结构:程序按顺序执行,不发生跳转 选择结构:根据是否满足条件 ,有选择的执行相应功能 循环结构:依据条件是否满足,循环多次执行某段代码 #define _CRT_ ...

  6. element-ui 格式化树形数组在table组件中展示(单元格合并)

    最近做的项目涉及到很多单元格合并问题,element-ui组件对于单元格合并的处理虽然很灵活,但是需要事先计算好每个单元格合并的rowspan和colspan,直接在span-method属性中计算实 ...

  7. CF 1383B GameGame

    传送门 题目:给定长度为n的数组a,A和B轮流拿走一个数,开始时A和B拥有的v为0,A和B每次拿走一个数时,他的v = v^ ai,A和B都很聪明,问都按照最优的情况考虑,拿完所有数之后A和B的v的大 ...

  8. 开发过程中遇到的-npm加载进node_modules里的文件怎么修改

    来源:https://juejin.im/post/5ec381215188256d776342cd https://mp.weixin.qq.com/s?__biz=MzUzNjk5MTE1OQ== ...

  9. 无锁机制----比较交换CAS Compare And Swap

    一.锁与共享变量 加锁是一种悲观的策略,它总是认为每次访问共享资源的时候,总会发生冲突,所以宁愿牺牲性能(时间)来保证数据安全. 无锁是一种乐观的策略,它假设线程访问共享资源不会发生冲突,所以不需要加 ...

  10. Scala集合中的函数(扩展)

    1.拉链(zip) 将两个集合进行 对偶元组合并,可以使用拉链 object Demo_031 { def main(args: Array[String]): Unit = { val list1 ...