Day - 23(系统服务):
一、CentOS 6和7的启动流程:
CentOS 6:
内核引导
1.当计算机打开电源后,首先是BIOS开机自检,按照BIOS中设置的启动设备(通常是硬盘)来启动。操作系统接管硬件以后,首先读入 /boot 目录下的内核文件。
运行init
init 进程是系统所有进程的起点,你可以把它比拟成系统所有进程的老祖宗,没有这个进程,系统中任何进程都不会启动。init 程序首先是需要读取配置文件 /etc/inittab。
运行级别
许多程序需要开机启动。它们在Windows叫做"服务"(service),在Linux就叫做"守护进程"(daemon)。init进程的一大任务,就是去运行这些开机启动的程序。但是,不同的场合需要启动不同的程序,比如用作服务器时,需要启动Apache,用作桌面就不需要。Linux允许为不同的场合,分配不同的开机启动程序,这就叫做"运行级别"(runlevel)。也就是说,启动时根据"运行级别",确定要运行哪些程序。
系统初始化
在init的配置文件中有这么一行: si::sysinit:/etc/rc.d/rc.sysinit 它调用执行了/etc/rc.d/rc.sysinit,而rc.sysinit是一个bash shell的脚本,它主要是完成一些系统初始化的工作,rc.sysinit是每一个运行级别都要首先运行的重要脚本。它主要完成的工作有:激活交换分区,检查磁盘,加载硬件模块以及其它一些需要优先执行任务。
建立终端
rc执行完毕后,返回init。这时基本系统环境已经设置好了,各种守护进程也已经启动了。init接下来会打开6个终端,以便用户登录系统。
用户登录系统
一般来说,用户的登录方式有三种:
(1)命令行登录
(2)ssh登录
(3)图形界面登录
CentOS 7:
区别:
二、系统的运行级别:
CentOS 6 :
级别:
0 关机
1 单用户模式 (超级权限 必须面对实体硬件)
2 暂未使用
3 字符界面(黑框)
4 暂未使用
5 图形界面
6 重启
0 6 关机 重启
3 5 字符 图形
1 单用户
2 4 没有使用
CentOS 7:
级别:
0 关机
1 单用户模式 (超级权限 必须面对实体硬件)
2 暂未使用
3 字符界面(黑框)
4 暂未使用
5 图形界面
6 重启
0 6 关机 重启
3 5 字符 图形
2 4 没有使用
1 单用户
命令:
查看当前的运行级别
systemctl get-default multi-user.target
修改系统下次启动时候的运行级别:
systemctl set-default multi-user.target
三、systemd的使用
什么是systemd
系统运行的最高运行的最高级别的进程,祖宗进程。
命令:
systemctl start nginx
开启nginx服务
systemctl stop nginx
停止nginx服务
systemctl restart nginx
重启nginx服务
systemctl reload nginx
重新加载nginx服务
systemclt status nginx
查看nginx服务的信息
systemctl enable nginx
永久开启nginx服务,与当前服务的这状态无关。
systemctl disable nginx
永久不启动nginx服务,与当前服务的这状态无关。
查看信息中的状态:
四、单用户模式(超级用户权限的模式)
能正常引导进入系统
1.配置文件错误导致无法启动
2.忘记ROOT密码 ( 快照 | 单用户修改)
https://mp.weixin.qq.com/s/1f-zCq8j4gL3xiB3AV9K3A 忘记root密码
五、救援模式(CD光盘)
试用场景:
系统无法正常进入 比如没有内核 比如grub被修改 比如系统崩溃
没有内核文件,只能使用救援模式进入
系统崩溃, 要保留重要的数据的时候
grub菜单出现问题, linux windows