无论是centos6还是7 ,grub加载以后,都加载linux内核,内核加载后找跟下面的第一个进程
6 init
7 systemd
后续工作就差别比较大
centos7引导顺序
加电自检
启动设备
grub2代对应的配置路径也不一样,也会有initramfs驱动模块
加载内核
内核有一些选项
内核启动完后去加载系统第一进程,而这个进程会去执行initrd.target包括会读取fstab挂载
然后切跟
切跟以后根据、etc/systemd/system/default.target 默认启动模式
接着运行sysinit.target 初始化脚本和basic.target
接着运行multi-user.target 类似原来的三模式
运行multi-user.target下的/etc/rc.d/rc.local
接着运行multi-user.target下的getty.target和登录服务
如果是图形就加载图形
(无非是7把各种脚本转换成各种服务和单元)
本质上还是软链接
二进制程序
在centos7也支持内核参数的设置
吧默认模式改成reboot就会重复重启
修改在后面加systemd.unit=mult-user.target
进入3模式修改好
可以类似用这种机制破解root口令
systemctl default 是默认进入当前的默认的模式
如何破解root口令
》
df不支持,用mount查看跟在哪里
sysroot是个真正的跟
重新可读写的挂载跟
切跟改数据
如果是selinux启动的一定要键一个文件/.autorelabel,不然标签不对还是启动不了
还有另外一种方式破解
如果selinux启用了也需要创建文件
6的grub是/boot/grub/grub.conf文件
放弃写,可以用命令生成这个文件
参考/etc/grub.d 和/etc/default/grub(改网卡名就改的这个文件)的模版生成的
**删除了也没关系,可以用命令生成
grub2-mkconfig把文件内容打印屏幕,就可以重定向间接生成 **
net.ifname网卡名
实际是上参考/etc/default/grub间接生成/boot/grub2/grub.cfg
删除了/boot/grub2里的所有文件如何修复
启动失败界面
–root-directory=/mnt/sysimage要指定boot目录所在地父目录(就是跟目录在哪里)
缺一个grub.config一个文件,可以用命令生成,但是先退出查看是否可以启动
类似里面的关键字段
界面错误
boot分区在第一个硬盘第一个分区上
双内核,如何设置谁是默认内核
现在是4
让3成为默认启动内核
0是第一项,1是第二项,改了之后不能马上生效
需要重新生成配置文件
把4内核删除
删除以后重新生成
记得把这里改了,不然认为现在的第二个救援模式为默认启动
但最好是通过模版修改/etc/default/grub ,然后用gurb2-mkconfig 重新生成
如果/boot/gurb2/grub.cfg文件缺失,启动是什么情况
最后boot启动
重新生成
删除boot目录怎么修复
切跟,光盘如果没有挂载就需要挂载光盘
强行安装–force
grub2-install,生成
还剩下gurb.cfg文件没有
BIOS搭配MBR分区,UEFI搭配GPT分区,如果主板是UEFI,就不需要写/dev/sda