linux系统恢复

4,961 阅读4分钟

微信设置水滴昵称,个性中带点萌

首先,我们了解一下Linux系统在启动的时候做了那哪些工作:

Linux启动过程

手动引导系统启动 主引导记录(MBR,Main Boot Record)是位于磁盘最前边的一段引导(Loader)代码。它负责磁盘操作系统(DOS)对磁盘进行读写时分区合法性的判别、分区引导信息的定位,它由磁盘操作系统(DOS)在对硬盘进行初始化时产生的。 当MBR部分出错后,可以通过光盘引导进入急救模式,系统自带grub2-install指令重装grub到/boot/grub目录下,再切换到硬盘启动就OK啦。

一、修复GRUB引导 方法一、通过修复模式恢复

重启后系统找不到引导位置,无法从硬盘启动:

关闭虚拟机:

打开虚拟机硬件配置界面

用添加IDE光驱启动,并添加镜像源,对系统进行修复

选择Boot启动设备为CDROM

重启系统时进入修复模式

更改家目录,重新安装grub引导(ps:更改selinux配置为disabled是为了避免系统启动时间较长)

重新生成grub后,关闭虚拟机,恢复使用硬盘启动

虚拟机正常启动界面:

方法二、从启动设备中提取GRUB文件 1.GRUB配置文件丢失,且未重启系统 直接用grub2-mkconfig命令生成GRUB配置文件

2.GRUB配置文件丢失,系统重启 set root=‘hd0 msdos1‘设置系统启动时启用分区

hd0表示第一块硬盘 msdos表示分区类型

linux16 +file

以传统的16位启动协议从"file"载入一个Linux内核映像,并将其余的字符作为内 核的命令行参数逐字传入。这通常用于启动一些遵守Linux启动协议的特殊工具 (例如MEMDISK)。 1 2 3 set root=(loop0) linux /boot/vmlinuz-2.6.32-22-generic root=/dev/sda5 loop=/ubuntu/disks/root.disk ro quiet splash initrd /boot/initrd.img-2.6.32-22-generic

进入系统后用grub2-mkconfig > /boot/grub2/grub.cfg 恢复文件

[root@localhost ~]# grub2-mkconfig > /boot/grub2/grub.cfg
Generating grub configuration file ... Found linux image: /boot/vmlinuz-3.10.0-123.el7.x86_64 Found initrd image: /boot/initramfs-3.10.0-123.el7.x86_64.img Found linux image: /boot/vmlinuz-0-rescue-946cb0e817ea4adb916183df8c4fc817 Found initrd image: /boot/initramfs-0-rescue-946cb0e817ea4adb916183df8c4fc817.img done 1 2 3 4 5 6 7 二、修复内核文件 1.内核文件丢失,系统未重启 找出文件依赖的应用 从镜像安装源中取出安装包 从安装包取出内核文件放到/boot目录下 [root@localhost boot]# rm -fr /boot/vmlinuz-3.10.0-123.el7.x86_64
[root@localhost boot]# yum whatprovides /boot/vmlinuz-3.10.0-123.el7.x86_64 查看内核文件附属的安装包 Loaded plugins: langpacks kernel-3.10.0-123.el7.x86_64 : The Linux kernel Repo : rhel_dvd Matched from: Filename : /boot/vmlinuz-3.10.0-123.el7.x86_64 kernel-3.10.0-123.el7.x86_64 : The Linux kernel Repo : installed Matched from: Filename : /boot/vmlinuz-3.10.0-123.el7.x86_64 1 2 3 4 5 6 7 8 9 10 11 将解压出来的内核文件复制在boot目录里面,即可恢复系统内核文件

[root@localhost Desktop]# rpm2cpio kernel-3.10.0-123.el7.x86_64.rpm | cpio -id
219282 blocks [root@localhost Desktop]# cp boot/vmlinuz-3.10.0-123.el7.x86_64 /boot/
1 2 3 2.内核文件丢失,系统重启 选取完整的软驱启动 安装驱动后,目录/run/install/repo/Packages/下有我们所需的安装包 复制安装包到/mnt/sysimage/mnt/下 更改根目录并重安装包中提取内核文件 将内核文件复制到/boot下

初始化RAM硬盘的文件丢失 1.系统还未重启

mkinitrd 命令建立要载入ramdisk的映像文件,以供Linux开机时载入ramdisk。 uname -r 是查看内核版本号

2.系统重启后如何修复

系统无法正常启动:

重新用软盘启动,并进入修复模式

启动级别发生错误 linux系统有0-6个启动级别 0表示关机,系统默认运行级别不能设置为0,否则不能正常启动 1表示单用户工作状态,root权限,用于系统维护,禁止远程登陆 2表示多用户状态 3表示完全多用户状态,登录后进入控制台命令行模式 4表示系统未使用,保留 5代表有图形模式启动 6表示正常关闭并重启,默认运行不能设为6,否则不能正常启动 更改启动级别:

系统启动错误:

在linux16行末添加启动级别数字

Ctrl+x启动后系统恢复

更改开机默认启动级别 [root@localhost Desktop]# systemctl set-default graphical.target rm '/etc/systemd/system/default.target' ln -s '/usr/lib/systemd/system/graphical.target' '/etc/systemd/system/default.target' 1 2 3

———————————————— 版权声明:本文为CSDN博主「Vincent_江」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:blog.csdn.net/qq_36747237…

微信设置水滴昵称,个性中带点萌

以上就是良许教程网为各位朋友分享的Linux相关知识。