linux系统恢复

来源:互联网 发布:爱言叶2动作数据 编辑:程序博客网 时间:2024/04/19 08:37

 

一.系统启动流程 

通电
 
bios(主板上的只读存储中,basic input or output system)作用,硬件检测,激活硬件

1.grub系统引导(grub引导分为两个阶段)
(1)阶段1 mbr(主引导记录)主引导记录在硬盘上的0磁道,一扇区,446个字节
       dd if=/dev/zero of=/dev/vda bs=446 count=1 可以清空mbr,重新启动
       进入到挽救模式,执行chroot /mnt/sysimage切换到真实/环境,
       并执行grub2-install /dev/vda

 主引导分区mrb损坏

查看boot分区

wKioL1mIcr-SmXeiAAAWcTnTWrw956.png

wKioL1mIcr7AfGi2AAAERbt-2Tg568.png

关闭selinux

wKiom1mIcr_BlfAOAAAfuoV5FFQ150.png

wKioL1mIcr_CWFoqAAACf4QUTKY429.png

选择救援模式

wKioL1mIcrvRKTx7AAARFGVDdPA701.png

wKiom1mIcruzKuEJAAAZL_tc0KQ177.png

wKiom1mIcrvRsnuBAAAyREc8xsY144.png

进入到真实目录,安装系统引导grub2

wKioL1mIcryxzb6jAAAu2NbmfYA177.png

安装完成后调回硬盘启动

wKioL1mIcr2jcj47AADby9a7e9E755.png

修复完成,可以正常启动

wKiom1mIcr2zmZb_AAAJMIpITeA278.png



(2)阶段2 grub文件引导阶段
   找到/boot分区
   读取/boot/grub2/grub.cfg
   文件丢失,grub2-mkconfig >/boot/grub2/grub.cfg

引导文件grub损坏

查看/目录分区是vda3


wKiom1mIdQmCzwB_AAAUw4Bmqo8031.png


删除引导文件

wKioL1mIdQezi7o2AAAFyzdNQ9E470.png

开机后手动输入引导文件

set root='hd0,msdos1' 根目录

linux16 /vmlinuz-3.10.0-327.e17.x86_64 ro root=/dev/vdb3 内核文件

initrd16 /initramfs-3.10.0-327.e17.x86_64.img 开机启动服务

boot 启动

wKioL1mIdQixjVqyAAAqww-EPC4386.png

利用grub2-mfconfig修复grub.cfg文件

wKiom1mIdQjAiA-LAAAtyd4JLBI634.png

进入系统后查看/boot/grub2/grub.cfg引导文件已经复原修复

wKioL1mIdQmyb2OxAAAm9vZAJ7k263.png




3.启动内核,只读挂载/设备
检测设备
对设备驱动进行初始化
进入系统初始化阶段
内核丢失,从新安装内核安装包就可以解决
rpm -ivh kernel-xxxxx.rpm --force

删除boot目录下的内核文件

wKioL1mIeb_jAt9CAAAeeX5oj74623.png

缺失内核文件,无法启动

wKiom1mIeb_hs1MHAAAMp9DZUag770.png

加载光驱

wKioL1mIecDhCTgBAAA6a4zqbcU472.png

进入救援模式,如图进入救援系统,真实的系统根目录为/mnt/sysimage

分解安装盘内的内核包

wKiom1mIecHRKOLTAAAlHeeC04o517.png

将分解后的内核文件拷贝到/mnt/sysimage/boot下,完成后退出

wKioL1mIecGTHaj6AAAPj1EDczg080.png

内核修复完成,进入系统

wKiom1mIecKiy-JLAAAIX-NlV5o754.png


4.系统初始化阶段
系统初始化阶段加载initrd镜像
开启初始化进程systemd
开始selinux
加载内核参数
初始化系统时钟,键盘,主机名称
重新读写挂载/设备
激活raid,lvm
激活配额
启动multi-user.target.wants中的所有服务
开启虚拟控制台
启动图形

initramfs-`uname -r`.img丢失用:mkinitrd initramfs-`uname -r`.img `uname -r`    恢复


开机后快进入到登陆界面时又自动关机,开机运行级别错误

重新启动系统

在系统启动阶段按上下键停止系统引导

wKioL1l_LMnC8jmrAAAUmOY7w0c745.png

选择启动引导标题,按e键进行编辑

找到linux16引导条目这一行,从这行最后删除到ro选项,并把ro改为rw,然后添加rd.break选项

wKioL1l_LPCTH7XmAAAfXyFjAV8447.png

wKiom1l_LPWQFXQgAAAq_7xpN9w206.png

ctrl+x启动设定过后的系统引导条目

进入系统后执行chroot  /sysroot切换到真实的系统环境

wKioL1l_LSLCtW8zAAAMm4NoKXw323.png

查看运行级别软连接,指向关机,重新做软连接运行级别

wKioL1mKXzPiO3K_AAFbET-nePg225.png

chroot  /sysroot

-rm -rf /etc/systemd/system/default.target

ln -s /lib/systemd/system/multi-user.target  /etc/systemd/system/default.target


系统运行级别
runlever0.target -> poweroff.target
runlever1.target -> rescue.target
runlever2.target -> multi-user.target
runlever3.target -> multi-user.target
runlever4.target -> multi-user.target
runlever5.target -> grapical.target
runlever6.target -> reboot.target





原创粉丝点击