linux中的系统恢复

来源:互联网 发布:电脑拍照软件 清晰 编辑:程序博客网 时间:2024/04/27 10:14

系统启动流程:

通电

||

bios(主板上的只读存储中,basicinput or output system)

作用,硬件检测,激活硬件

||

grub系统引导(grub引导分为两个阶段)

1)阶段1mbr(主引导记录)主引导记录在硬盘上的0磁道,一扇区,446个字节


2)阶段2grub文件引导阶段

||

启动内核,只读挂载/设备

检测设备

对设备驱动进行初始化

进入系统初始化阶段


||

系统初始化阶段

系统初始化阶段加载initrd镜像

开启初始化进程systemd

开始selinux

加载内核参数

初始化系统时钟,键盘,主机名称

重新读写挂载/设备

激活raidlvm

激活配额

启动multi-user.target.wants中的所有服务

开启虚拟控制台

启动图形

一、误删MBR(关机了)

模拟误删MBR,一定严格按照此步骤来:

1ddif=/dev/zero of=/dev/vda bs=446 count=1 ---可以清空mbr


2reboot


3、设置个光盘启动



4、进入挽救模式

1

ENTER

chroot/mnt/sysimage ---切换到真实环境

grub2-install/dev/vda ---安装引导 (未关机直接执行此命令)

exit

exit





5、改回硬盘启动即可发现系统修复好了


二、误删grub.cfg(记清楚自己的根分区所在位置df

同样模拟删除grub.cfg,然后按以下步骤依次执行:

1rm-rf /boot/grub2/grub.cfg


2、启动系统后执行

(1)setroot='hd0,msdos1' ---boot启动分区

(2)linux16/vmlinuz-3.10.0-327.e17.x86_64 ro root=/dev/vda2---路径为自己根所在路径

(3)initrd16/initramfs-3.10.0-327.e17.x86_64.img ---系统初始化程序

(4)boot


3、系统启动后

grub2-mkconfig>/boot/grub2/grub.cfg(未关机直接执行此命令重新制作该文件)


三、误删内核文件

同样模拟删除,一定要按照下列步骤进行:

1rm-rf /boot/vmlinuz-3.10.0-327.e17.x86_64 ---删除内核



2、进入拯救模式后执行

1

ENTER

chroot/mnt/sysimage

mount/dev/sr0 /mnt/ ---挂载系统镜像

cd/mnt/Packages

rpm-ivh kernel-3.10.0-327.e17.x86_64.rpm --force

exit

exit


3、最后改回硬盘启动即可



误删内核文件第二种方式修改
进入挽救模式
直接 cp /run/install/repo/Packages/kernel-3....rpm /mnt/sysimage/mnt  ---复制内核安装包到真实环境某一位置
cd /mnt/sysimage/mnt
rpm2cpio kernel-3....rpm | cpio -id    ---解包得到二进制文件
cd boot
cp vmlinuz-3.... /mnt/sysimage/boot/    ---复制内核文件到boot分区下
exit


3、系统初始化镜像文件丢失
rm -rf /boot/initramfs-3.10....img
未关机情况:
mkinitrd /boot/initramfs-$(uname -r).img $(uname -r) $(uname -r)输出内核版本号
关机后:
进入挽救模式
chroot /mnt/sysimage
cd /boot/
mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)
4、误删boot分区
进入拯救模式
chroot /mnt/sysimage
mkdir /boot
grub2-install /dev/vda
mount /dev/sr0 /mnt
cd /mnt/Packages
rpm -ivh kernel-3.10.0-327.e17.x86_64.rpm --force
grub2-mkconfig >/boot/grub2/grub.cfg
exit
exit
修改为硬盘启动


5、开机启动级别更改
模拟:systemctl set-default reboot.target   ---开机一直重启

开机后  e   进入内核

chroot /sysroot/
rm -rf /etc/systemd/system/default.target      ---删除错误的链接
ln -s /usr/lib/systemd/system/graphical.target /etc/systemd/system/default.target    ---创建正确的链接



原创粉丝点击