linux云自动化运维基础知识22(系统恢复)

系统引导过程概述:

通电——bios初始化——grub2磁盘引导阶段——grub2文件引导阶段——指定boot分区所在位置——启动内核,只读/挂载设备——启动init程序进入初始化阶段——启动systemd初始化进程——取/etc/systemd/中的文件——启动程序——启动登陆环境。

系统启动流程:

一.通电

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

二.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

实验:mbr主引导分区损坏后修复方法

(1)实验之前首先要关闭selinux。

vim /etc/sysconfig/selinux

如图将其改为disable,然后重新启动系统

(2)破坏掉mbr主引导分区

dd if=/dev/zero of=/dev/vda bs=446 count=1

重新启动系统后发现无法启动

(3)设置光驱启动进入救援模式

(4)如上图输入1回车后会得到一个shell,此时执行df命令查看自己系统的根分区,然后执行

chroot /mnt/sysimage/

转换根分区,此时便切换到了真实的根环境,然后执行

grub2-install /dev/vda

重新恢复mbr分区,接着exit两次退出,关闭虚拟机之后将启动调回硬盘启动,开机后便可正常启动。

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

实验:grub文件损坏后修复方法

(1)实验之前执行df命令查看自己的根分区和boot分区

(2)删除grub文件引导

rm -fr /boot/grub2/grub.cfg

(3)重新启动发现无法启动

(4)手动输入引导文件

set root=‘hd0,msdos1’     boot分区所在的位置
linux16 /vmlinuz-3.10.0-327.el7.x86_64 ro root=/dev/vda3 根分区所在的位置
initrd16 /initramfs-3.10.0-327.el7.x86_64.img  执行
boot  启动

此时可以开机,但是这是手动引导,为临时生效,开机后应该恢复/boot/grub2/grub.cfg文件

grub2-mkconfig > /boot/grub2/grub.cfg

恢复文件之后系统就成功复原了。

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

实验:内核文件丢失后修复

(1)首先查看启动需要哪些文件

ls /boot      查看启动分区的文件

(2)将内核文件删除后重新启动

rm -fr /boot/vmlinuz-3.10.0-327.el7.x86_64    删除内核文件
reboot

(3)重新启动后发现无法正常开机,提示缺少内核文件

(4)设置光驱启动,进入救援模式,执行df命令可以看到此时自己真实系统的根目录为/mnt/sysimage,而此处显示的根为iso镜像的根。

(5)分解iso镜像中的内核包,并将内核文件拷贝到/mnt/sysimage/boot/

rpm2cpio /run/install/repo/Packages/kernel-3.10.0-327.el7.x86_64.rpm |cpio -id
cp /boot/vmlinuz-3.10.0-327.el7.x86_64 /mnt/sysimage/boot/

(6)exit 并且设置硬盘启动,重新启动。修复完成进入系统

四.系统初始化阶段

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

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

实验:系统初始化加载initrd镜像损坏后恢复

(1)删除initrd镜像文件initramfs-3.10.0-327.x86_64.img

rm -fr /boot/initramfs-3.10.0-327.x86_64.img   删除initrd镜像文件

(2)重新启动发现无法进入系统

(3)设置光驱启动,进入救援模式,执行chroot  /mnt/sysimage 切换到真实的根环境

(4)mkinitrd   /boot/initramfs-$(uname -r).img  $(uname -r)

(5)ls   /boot/查看文件是否恢复,exit两次后设置硬盘启动,系统恢复正常

时间: 2024-10-13 22:31:15

linux云自动化运维基础知识22(系统恢复)的相关文章

linux云自动化运维基础知识11(ip网络 )

####1.ip基础知识####1.ipv42进制32位-----10进制 172.25.0.10/255.255.255.0172.25.0.10:ip地址255.255.255.0:子网掩码子网掩码255位对应的ip位为网络位子网掩码0对应的ip位为主机位 ####2.配置ip####<<图形化>>1.图形界面nm-connection-editor 2.文本化图形nmtui <<命令>>ifconfig 网卡 ip netmask    ##临时设定

linux云自动化运维基础知识7(进程)

####1.进程定义####进程就是cpu未完成的工作 ####2.ps命令####ps    a    ##关于当前环境的所有进程    x| -A    ##所有进程    f    ##显示进程从属关系    e    ##显示进程调用环境工具的详细信息    l    ##长列表显示进程的详细信息    u    ##显示进程的用户信息    -a    ##显示shell前台运行命令的进程,但不保函shell本身    ps ax -o %cpu,%mem,user,group,com

linux云自动化运维基础知识3(系统的基本命令)

1 date watch -n 1 date     ###让date命令每秒执行一次,ctrl +c 推出监控模式 date 11181115        ###把系统时间设定为11月18日11:15 格式:月月天天小时分钟 date 111811152016.55    ##2016表示年(可以不加).55 表示秒(可以不加) -d +xday -xday        ##查看x天前或者后的时间+%....            ##设定date的输出格式 2.passwd    参数 

linux云自动化运维基础知识14(设备挂载)

####1.设备访问####1.设备识别/dev/xdxn        ##硬盘设备/dev/sda1/dev/cdrom        ##光驱/dev/mapper/*        ##虚拟设备 2.设备的使用##<设备的发现>##fdisk -l        ##查看真实存在的设备cat /proc/partitions    ##系统能够识别的设备blkid            ##系统能够挂载使用的设备iddf            ##查看设备被系统使用的情况 ##<

linux云自动化运维基础知识10(日志同步和时间同步)

####1.系统日志默认分类#### /var/log/messages    ##系统服务及日志,包括服务的信息,报错等等/var/log/secure        ##系统认证信息日志/var/log/maillog    ##系统邮件服务信息/var/log/cron        ##系统定时任务信息/var/log/boot.log    ##系统启动信息 ####2.日志管理服务rsyslog#### 1.rsyslog负责采集日志和分类存放日志2.rsyslog日志分类vim /

linux云自动化运维基础知识4(系统结构,vim,管理输入输出,正则表达式)

linux系统结构    linux是一个倒树结构   linux中所有的东西都是文件   这些文件都在系统顶级目录"/" /就是根目录  /目录以下为二级目录这些目录都是系统装机时系统自动建立的如图 2.二级目录的作用/bin    ##二进制可执行文件也就是系统命令/sbin   ##系统管理命令存放位置/boot   ##启动分区,负责系统启动/dev    ##设备管理文件/etc    ##大多数系统管理文件/home   ##普通用户的家目录/lib    ##32位系统库

linux云自动化运维基础知识5.6(用户管理及文件权限)

用户理解用户就是系统使用者的身份在系统中用户存储为若干窜字符+若干个系统配置文件用户信息涉及到的系统配置文件:/etc/passwd        ###用户信息用户:密码:uid:gid:说明:家目录:用户使用的shell/etc/shadow        ###用户认证信息用户:密码:最后一次密码修改该时间:最短有效期:最长有效期:警告期:非活跃期:帐号到期日/etc/group        ###组信息 组名称:组密码:组id:附加组成员 /etc/gshadow        ###

linux云自动化运维基础知识2(系统的基本操作)

切换用户   如图所示:在命令提示符之后输入su - username    注意:高级用户切换到低级用户不需要密码,低级用户切换身份需要密码. 注意:此处密码无回显. 2.虚拟控制台:Ctrl+Alt+F(1|7)    进入图形            Ctrl+Alt+F(2~6) 进入虚拟控制台      Red hat Enterprise Linux Server 7.0 (Maipo)    ##系统版本      Kernel 3.10.0-123.el7.x86_64 on an

linux云自动化运维基础知识23(DNS服务)

一.DNS概述作用:提供域名解析服务正向解析:域名--ip   eg:(www.baidu.com  -- 220.181.111.188)反向解析:ip--域名   eg:(220.181.111.188 -- www.baidu.com) DNS的查询方式递归查询:客户机向自己的DNS服务器请求解析的方式.迭代查询:服务器向服务器查询的方式. DNS解析的先后顺序(由配置文件/etc/nsswitch.comf决定)1.本机缓存2.本机/etc/hosts文件 格式:3.指定的DNS服务器缓