CentOS7 引导启动顺序
2019-07-21 本文已影响0人
一剑仙人跪_
1.UEFi 或BIOS 初始化,运行POST 开机自检
选择启动设备
智慧联想浏览器截图20190810094953.png
2.加载mbr到内存
自检硬件没有问题时候,这里以BIOS为例,BIOS将会直接找硬盘的第一个扇区,找到前446字节,将MBR加载到内存中,MBR将告诉程序下一阶段去哪里找系统的grub引导。此阶段属于grub第一阶段。grub还有1.5阶段和2阶段。
- 引导装载程序, centos7 是grub2
加载装载程序的配置文件:/etc/grub.d/ ,/etc/default/grub ,/boot/grub2/grub.cfg
开机后的系统引导程序。提供开机时选择进入具体哪个系统的菜单 GRUB的作用就是负责加载所选择的内核,当有多个系统内核时,可以手动选择要启动的系统,在GRUB图形界面上有多系统选项菜单。在linux中有两种流行的引导加载程序,除了GRUB外还有个LILO(linux loader),
- 加载内核和inintamfs模块
- 内核初始化,centos7 使用systemd 代替init
执行initrd.target 所有单元,包括挂载/etc/fstab
从initramfs 根文件系统切换到磁盘根目录
systemd 执行默认target 配置,配置文件/etc/systemd/system/default.target
systemd 执行sysinit.target 初始化系统及basic.target 准备操作系统 #basi.target用于启动普通服务 sysinit.target会启动重要的系统服务例如系统挂载,内存交换空间和设备,内核补充选项等等
systemd 启动multi-user.target 下的本机与服务器服务
systemd 执行multi-user.target 下的/etc/rc.d/rc.local
6.systemd 执行multi-user.target 下的getty.target及登录服务
getty.target,它是启动终端的systemd对象。如果到此步骤,系统没有指定启动图形桌面,到此就可以结束了,如果需要启动图形界面,要在此基础上启动桌面程序
7.systemd 执行graphical 需要的服务 #图形化需要的服务
查看开机自启项
centos7自启项已不用chkconfig改为:
systemctl list-unit-files
服务状态
systemctl list-unit-files --type service --all显示状态
loaded:Unit配置文件已处理
active(running):一次或多次持续处理的运行
active(exited):成功完成一次性的配置
active(waiting):运行中,等待一个事件
inactive:不运行
enabled:开机启动
disabled:开机不启动
static:开机不启动,但可被另一个启用的服务激活
systemctl 命令示例:
显示所有单元状态
systemctl 或 systemctl list-units
只显示服务单元的状态
systemctl --type=service
显示sshd服务单元
systemctl–l status sshd.service
验证sshd服务当前是否活动
systemctl is-active sshd
启动,停止和重启sshd服务
systemctl start sshd.service
systemctl stop sshd.service
systemctl restart sshd.service
重新加载配置
systemctl reload sshd.service
列出活动状态的所有服务单元
systemctl list-units --type=service
列出所有服务单元
systemctl list-units --type=service --all
查看服务单元的启用和禁用状态
systemctl list-unit-files --type=service
列出失败的服务
systemctl --failed --type=service
列出依赖的单元
systemctl list-dependencies sshd
验证sshd服务是否开机启动
systemctl is-enabled sshd
禁用network,使之不能自动启动,但手动可以
systemctl disable network
启用network
systemctl enable network
禁用network,使之不能手动或自动启动
systemctl mask network
启用network
systemctl unmask network
管理服务
管理系统服务:
CentOS 7: service unit
注意:能兼容早期的服务脚本
命令:systemctl COMMAND name.service
注意:systemctl 优势,可一次性控制多个服务
启动:service name start ==> systemctl start name.service
停止:service name stop ==> systemctl stop name.service
重启:service name restart ==> systemctl restart name.service
状态:service name status ==> systemctl status name.service
条件式重启:已启动才重启,否则不做操作
service name condrestart ==> systemctl try-restart name.service
重载或重启服务:先加载,再启动
systemctl reload-or-restart name.service
重载或条件式重启服务:
systemctl reload-or-try-restart name.service
禁止自动和手动启动:
systemctl mask name.service //禁止某服务启动
取消禁止:
systemctl unmask name.service //取消禁止
/etc/systemd/system:系统管理员和用户使用/usr/lib/systemd/system:发行版打包者使用
20190401115005373.png