Linux系统引导过程及引导修复
2021/7/28 7:06:20
本文主要是介绍Linux系统引导过程及引导修复,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、通电
二、bios初始化
开机时摁f12,进入后,tab后,选择第一个setup,可以看到bosi界面
1、初始化进行的事情:
(1)对硬件检测
(2)初始化硬件时钟
三、磁盘引导
mbr=主引导记录=0磁道1扇区446
作用:
记录grub2引导文件的位置
当mbr数据丢失系统会因为找不到启动分区而停止启动
1、问题模拟解决:
系统磁盘: /dev/sda
dd if=/dev/zero of=/dev/vda bs=446 count=1 //清空系统/dev/sda上的mbr数据
2、正常恢复数据:
用光盘作启动盘进入系统挽救模式
chroot /mnt/sysimageg grub2-install /dev/vda exit exit
3、步骤:
选择第三个trouble... 选择rescue... 选择1 然后chroot /mnt/sysimage grub2-install /dev/vda exit exit
四、文件引导阶段
1、 两个关键的引导文件:
/boot/grub2/grub.cfg /boot/loader/entries/xxxxxxx.conf
2、模拟问题:
rm-rf /boot/grub2/grub.cfg rm-rf /boot/loader/entries/xxxxx.conf
3、手动引导修复:
set root='hd0,msdos1' linux16 /vmlinuz-4.18.0-193.el8.x86_64 ro root=/dev/vda3 initrd16 /initramfs-4.18.0-193.el8.x86_64.img boot
4、进入系统后:
grub2-mkconfig >boot/grub2/grub.cfg kernel-install add 4.18.0-193.el8.x86_64 /lib/modules 4.18.0-193.el8.x86_64/vmlinuz//重新配置文件
五、内核加载
1、加载内核的作用:
/boot/vmlinuz-$(uname -r)
系统初始化硬件设备
只读挂载设备
2、问题出现
rm -rf /boot/vmlinuz-$(uname -r)
3、恢复:
复制系统中usr下的内核文件到/boot中即可
4、进入到挽救模式:
chroot /mnt/sysimage cp /usr/lib/modules/$(uname -r)/vmlinuz /boot/vmlinuz-$(uname -r) exit exit
六、系统初始化镜像
1、文件及作用:
/boot/initramfs-4.18.0-80.el8.x86_64.img
加载系统时钟
加载selinux
加载系统主机信息
加载/etc/fstab文件中磁盘挂载策略
加载磁盘配额
初始化系统程序开启开机启动服务
开启虚拟控制台
开启图形
2、问题出现:
rm -rf /boot/initramfs-xxxx.img
3、恢复:
进入挽救模式 chroot /mnt/sysimage mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)
七、系统启动级别
1、级别一览
0 关机 1 单用户 2 无图形网络模式 3 无图形网络模式 4 无图形网络模式 5 有图形网络模式 6 重启
2、问题出现
systemctl sset-default reboot.target
3、恢复
在开机选择界面按<e>进入到引导文件编辑模式 在内核加载选项最后加入启动级别5 ctrl+x
进入系统后:
systemctl.set-default graphical.target
八、超级用户密码忘记
在开机选择界面按<e>进入到引导文件编辑模式 删除到ro之前 并改成rw rd.break ctrl+x启动 chroot /sysroot echo westos | passwd --stdin root passwd 输入两次密码 touch /.autorelabel 然后两次exit退出,正常启动即可
这篇关于Linux系统引导过程及引导修复的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-18git仓库有更新,jenkins 自动触发拉代码怎么配置的?-icode9专业技术文章分享
- 2024-12-18Jenkins webhook 方式怎么配置指定的分支?-icode9专业技术文章分享
- 2024-12-13Linux C++项目实战入门教程
- 2024-12-13Linux C++编程项目实战入门教程
- 2024-12-11Linux部署Scrapy教程:新手入门指南
- 2024-12-11怎么将在本地创建的 Maven 仓库迁移到 Linux 服务器上?-icode9专业技术文章分享
- 2024-12-10Linux常用命令
- 2024-12-06谁看谁服! Linux 创始人对于进程和线程的理解是…
- 2024-12-04操作系统教程:新手入门及初级技巧详解
- 2024-12-04操作系统入门:新手必学指南