linux运维-系统恢复
unit11:系统恢复:
系统引导过程概述:
图11.0
启动第一步--加载bois
打开电源之后,计算机首先会加载bios信息。bios中包含CPU的相关信息、设备启动顺序信息、硬盘信息、内存信息、时钟信息、pnp特性等。在读取完bios中的信息之后,计算机就会知道应该去读取哪个硬件设备了
启动第二步--读取MBR
磁盘上第0磁道第一个扇区被称为MBR,也就是MASTER Boot Record,即主引导记录,他的大小是446个字节,里面存放了预启动信息、分区表信息等
1)当主引导记录被破坏时:
dd if=/dev/zero of=/dev/vda bs=446count=1 ##破坏磁盘引导文件
reboot ##重启虚拟机
virt-manager
设置AddHardware
选择BootOptions 将光驱调到第一个
Apply
chroot /mnt/sysimage ##将磁盘上的根文件系统以只读的方式挂载到sysimage上
gurb2-install /dev/vda
vim /etc/sysconfig/selinux ##设置selinux=disabled,重启时速度会快,不用加载安全上下文
exit
exit
设置硬盘进入系统,重新打开desktop,打开成功
2)当开机引导系统分区文件被破坏时:
rm -fr /boot/grub2/grub.cfg ##删除开机引导系统分区文件
reboot ##重启 grub>set root='hd0,msdos1'
linux16/vmlinuz-3.10.0-327.el7.x86_64 root=/dev/vda1
initrd16 /initramfs-3.10.0-327.el7.x86_64.img
boot
grub2-mkconfig >/boot/grub2/grub.cfg ##重新找回文件
reboot ##重启恢复正常
设置硬盘进入系统,重新打开desktop,打开成功
启动第三步--BootLoader
Boot Loader就是在操作系统内核运行之前运行的一小段程序。通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核做好一切准备。
系统读取内存中的grub配置信息,并依照此配置信息来启动不同的操作系统。
启动第四步--加载内核文件(/boot目录下)
根据grub设定的内核映像所在路径,系统读取内存映像,并进行解压操作。
系统将解压后的内核放置在内存之中,并且调用初始化函数初始化各种设备,完成linux核心环境的建立。此时,linux内核已经建立起来了,基于linux的程序应该可以正常运行了。
3)当内核文件被删除时:
rm -fr/boot/vmlinuz-3.10.0-327.el7.x86_64 ##删除内核文件
reboot ##无法重启
virt-manager ##设置内核文件为7.0,用cdrom进入系统
chroot /mnt/sysimage
mount /dev/cdrom /mnt/
cp/mnt/Packages/kernel-3.10.0-123.e17.x86_64.rpm /root/(任意目录) ##复制kernel安装包到/root下
cd /root/
ls
rpm2cpiokernel-3.10.0-123.e17.x86_64.rpm |cpio -id ##将安装包解压成目录
ls
cd boot/ ##切换到解压后/root下的boot里
ls
cp vmlinuz-3.10.0-327.el7.x86_64/boot/ ##将内核文件重新复制到/boot/中
exit
exit
设置硬盘进入系统,重新打开desktop,打开成功
4)删除启动初始化程序文件:
rm -fr/boot/initramfs-3.10.0-123.el7.x86_64 ##删除启动初始化程序文件
reboot
virt-manager ##设置内核文件为7.0版用cdrom进入系统
chroot /mnt/sysimage
mkinitrd /boot/initramfs-$(uname -r).img$(uname -r)
exit
exit
设置硬盘进入系统,重新打开desktop,打开成功
启动第五步--运行init进程 ,永远是第一个进程
init进程(/sbin/init程序)是所有进程的起点,没有这个进程系统中任何进程都不会启动。
5)删除systemd初始化进程中的某个服务
cd default.target
ls -l default.target
rm -fr default.target ##删除systemd初始化进程中的某个服务
ln -s/usr/lib/systemd/system/poweroff.target /etc/systemd/system/default.target ##建立软链接
reboot
virt-manager ##打开虚拟机单击e进入编辑模式
chroot /sysroot
ls -l /etc/systemd/system/default.target
rm -fr/etc/systemd/system/default.target ##删除初始化进程
ln -s /usr/lib/systemd/system/graphical.target/etc/systemd/system/default.target ##重新建立正确的软链接
exit
exit ##退出后自动登陆
6) 忘记密码
开启虚拟机进入编辑模式
chroot /sysroot ##改变根目录
passwd ##更改新密码
touch /.autorelabel ##为了selinux生效
exit
exit