linux终端命令init3,Linux(9)RedHat7 基本命令八-init命令详解

文章目录

导言

redhat6和redhat7区分

运行级别

init命令

作用

用法

详细全选项参数解释

命令参数说明

默认运行级别相关

查看默认运行级别

设置默认第三启动级别

设置默认第五启动级别

总结

导言

很久没写linux博文了,最近的一次是第八篇文章,教了shutdown命令,本次教init命令。

init命令是Linux下的进程初始化工具,init进程是所有Linux进程的父进程,它的进程号为1。init命令是Linux操作系统中不可缺少的程序之一,init进程是Linux内核引导运行的,是系统中的第一个进程。

redhat6和redhat7区分

在redhat7中,init的进程换成了systemd,进程号为1。

我们可以用pstree去查看。Redhat7和Redhat6的区别

在redhat6中,使用pstree可以明确的发现初始化进程为1(init):

我们可以用pstree去查看。Redhat7和Redhat6的区别

pstree -p

ef950f9cf366a4f0adea2a433bf7b0c6.png

而在redhat7中,该进程为1的是systemd

输入同样的命令

pstree -p

373218d265d6f979536a44edd822f7ba.png

运行级别

说到init,就不得不说说系统的运行级别了。

到底什么是运行级呢?简单的说,运行级就是操作系统当前正在运行的功能级别。这个级别从0到6 ,具有不同的功能。你也可以在/etc/inittab中查看它的英文介绍。

37e92b466f83d4ae27b8182feb5fb86d.png

在大多数的linux发行版本中,通常有以下的runlevel:

运行级别

模式说明

简介

0

系统停机模式

系统默认运行级别不能设置为0,否则不能正常启动,机器关闭。

1

单用户模式

root权限,用于系统维护,禁止远程登陆,就像Windows下的安全模式登录。

2

多用户模式

没有NFS网络支持。

3

完整的多用户文本模式

有NFS,登陆后进入控制台命令行模式。

4

系统未使用

保留一般不用,在一些特殊情况下可以用它来做一些事情。例如在笔记本电脑的电池用尽时,可以切换到这个模式来做一些设置。

5

图形化模式

登陆后进入图形GUI模式,X Window系统。

6

重启模式

默认运行级别不能设为6,否则不能正常启动。运行init 6机器就会重启。

多数的桌面的linux系统缺省的runlevel是5,用户登陆时是图形界面,而多数的服务器版本的linux系统缺省的runlevel是3,用户登陆时是字符界面 runlevel 1和2除了调试之外很少使用,runlevel s和S并不是直接给用户使用,而是用来为Single user mode作准备。

linux的运行模式比起windows的启动模式的优势在于:你可以在系统空闲时使用init命令切换你现在使用的runlevel,另外,当你关闭或者启动linux系统时你已经不知不觉中切换你的runlevel,系统关机进程需要调用runlevel(0或6)来关闭所有正在运行中的进程。

值得注意的是

RHEL7不再使用/etc/inittab文件进行默认的启动级别配置

systemd使用比sysvinit的运行级更为自由的target替代。

第3运行级用multi-user.target替代。

第5运行级用graphical.target替代。

runlevel3.target和runlevel5.target分别是

指向 multi-user.target和graphical.target的符号链接。

init命令

作用

切换系统运行级别

用法

init [OPTIONS...] {COMMAND}

详细全选项参数解释

长选项

含义(作用)

--help

展示init命令帮助信息

--no-wall

在halt/power-off/reboot 之前之前不要发送留言信息

命令参数说明

Commands

功能

0

关闭系统(机器)

6

重启系统(机器)

2,3,4,5

启动runlevelX.target 单元

1,s,S

进入救援模式( rescue mode)

q,Q

重新加载init守护进程配置

u,U

重新执行init守护进程

默认运行级别相关

值得注意的是,虽然我们仍然可以使用init 0关闭系统,但在centOS7甚至是Redhat7中,init的命令已经是兼容模式的命令,不过切换运行级别的指令换成了使用systemctl,这指令十分的重要,观看我写的第一篇linux博文的时候,那部分的时候,其实有用到这个命令,就是使用网络的时候,比如systemctl restart network,这个命令可能以后再继续讲解。

在这里,我会使用systemctl而不是init命令去实现。

查看默认运行级别

runlevel

systemctl get-default

这两个命令都可以查看默认运行级别,运行结果如下所示:

4baba69b00ecebbb783c0fd8064738c9.png

设置默认第三启动级别

以下不采取截图,直接命令及其返回结果,注意需要输入你的root账号密码。

[yuyuntan@localhost Desktop]$ systemctl set-default multi-user.target

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

Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target.

设置默认第五启动级别

[yuyuntan@localhost Desktop]$ 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.

总结

目前为止,大概是这些需要掌握的init命令及运行级别,如果后期需要补充或者有其他需要了解的,和我说说,我会相对修改。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值