这时候可以简单的输入root密码,然后执行fsck进行文件系统修复,最后重启即可。
但有时候你没有root密码怎么办?可以进入Single User mode来获得root权限,但前提是你必须在物理电脑面前。
编辑grub 第二行 "kernel ..." 后面加上 空格+1 进入单用户,还是会出现文件系统上面的错误。
这时得想办法跳过文件系统检测,可编辑grub 第二行 "kernel ..." 后面 加上 “空格 + init=/bin/bash”
下述讲述的是GRUB引导方式怎么获取Single User Mode,RHEL5 and Ubuntu use GRUB.
然后文件系统修复
全部检查完后 ctrl+D重新启动即可进入系统
情景一:
centos7上 vmlinuz-3.10.0-693.el7.x86_64 内核文件损坏
1,故障状态
2,修复方法,挂载光盘进入救援模式。
选择:Troubleshootimg ——>Rescue a Centos system——>1 (注意查看光盘挂载路径)
3,开启一个子shell 查看光盘是否挂载(centos6光盘需要手动挂载)找到光盘下的vmlinuz文件复制到根目录下。在利用uname-r生成版本号。
确认新的文件生成后记得要输入sync同步磁盘读写,然后输入exit退出重启,即修复完成。
情景二,
centos6 ,/boot/initramfs-2.6.32-696.el6.x85_64.img 内核文件损坏
一,故障状态
(加载完菜单后续不显示)
二,修复方法
挂载光盘进入救援模式
选择Rescue installed system ——>OK——>OK——NO——continue——OK——OK
1,开启一个子shell
切根到当前系统正在的根目录
使用mkinitrd /boot/initramfs-`uname -r`.img `uname -r`生成该文件(过程比较缓慢,不能终止。生成之后不要忘记sync同步读写磁盘,)exit退出之后重启即修复成功。
情景三,
grub下的1.0阶段被损坏
故障状态:认为系统以无启动功能,硬盘无法加载,直接进入下一级可引导界面
1,修复方法,光盘引导,进入救援模式。
选择Rescue installed system ——>OK——>OK——NO——continue——OK——OK
开启一个子shell (注意查看当前系统根在所在分区)
1,先切根至硬盘目录下,执行grub-install 命令使其生成文件。最后sync同步读写磁盘。退出即修复成功)
2,grub下stage1.5阶段损坏
故障状态 :从此硬盘启动黑屏,在第一行有一个光标,但是无法进入系统,也不会去读取下一个可引导设备
得找到boot分区所存在的位置,下图的位置为第一个硬盘的第一个分区
退出救援模式重启即修复成功
情景四:
误删了整个/boot分区的修复方法及故障状态
grub无法读取配置文件,在开机的时候会默认进入grub的命令行界面
1,修复方法:光盘引导,进入救援模式
选择Rescue installed system ——>OK——>OK——NO——continue——OK——OK
开启子shell
1,我们首先切根至硬盘所在的根,在手动将光盘挂载,光盘挂载后将光盘目录下的vmlinuz文件拷贝至/boot分区下。
2,此时我们看到/boot分区中还只有一个文件,接下来要一个个生成/boot下的文件
initramfs.ing ·umame-r` 用此命令可以生成丢失的initramfs文件
grub-install /dev/sda 此命令用于生成grub下的文件夹
3,此时我们可以看到grub里面的文件差不多得修复了,唯独缺少了一个和启动页面相关的grub.conf。文件。(注此文件需要手动建)
4,使用vi创建一个grub.conf文件,格式如下。
保存后面sync同步磁盘读写。退出shell重启修复成功
情景五。
/etc/下fstab文件损坏及故障状态,修复方法
故障状态:因为无法挂载分区,启动故障
1,解决方案,此时因为fstab文件丢失系统会出现以下提示查不到根文件系统
2,使用fdisk -l 命令可以查看哪个分区是根
3,新建文件夹,如果不知道根分区所在位置可以一个一个进行挂载测试
4,将根分区挂载后编辑被损坏的/etc/fstab文件
使用vi /mnt/rootfs/etc/fstab 进行编辑 【注:此处文件系统格式写文件时最好使用blkid命令查看]
重启进入系统,然后再把其他的分区找到,然后写入fatab文件,修复成功。
注意:如果根和boot分区是用的lvm管理的,那么在救援模式下不可以直接使用,得需要使用以下命令激活vg,然后 *** 作就和以上步骤一样了。
vgchange -ay vgname 激活卷组。
情景六,
init程序被误删的故障状态及修复方法
故障状态:内核可以初始化但是无法进入登陆页面,出现一个sh的命令行
修复方法,进入救援模式,安装upstart包,并查看init程序是否重新生成
完结。 个人学习笔记仅供参考。
CentOS备份与恢复命令说明:
CentOS系统通常使用dump/xfsdump命令进行系统分区/目录备份,备份可以使用全量备份和增量备份,CentOS 进行系统备份时针对不同的文件系统使用不同的命令进行备份与恢复,例如,文件系统使用ext2/ext3/etx4使用dump备份命令和restore恢复命令,文件系统使用xfs使用xfsdump备份命令和xfsrestore恢复命令。所以,在CentOS系统分区/目录备份或恢复进,建议先查看文件系统类型再使用对应的命令进行备份与恢复。
dump备份命令:
restore恢复命令:
注意: 要切换到当前需要恢复的目录进行恢复
xfsdump命令:
xfsrestore 恢复命令:
注意: /boot/是你要恢复的目录或文件
dumprestore备份与恢复(文件系统etx2/etx3/etx4) *** 作:
提示: 以备份/boot目录为演示,xfsdump与xfsrestore备份与恢复 *** 作步骤一样,只是命令不相同而已。
1、查看CentOS使用的文件系统类型
2、配置阿里yum源和epel源
3、安装dump工具
提示: CentOS系统默认没有安装dump工具
4、使用dump命令备份/boot/目录
5、删除/boot/目录所有文件仅保存一个文件存在以便作对比,致使CentOS无法进入GRUB菜单
6、启动CentOS安装光盘(U盘制作CentOS安装光盘也可以)进入Troubleshooting
7、挂载系统 / 根分区和 /boot分区
8、使用restore恢复命令进行boot目录恢复
9、重启进入系统测试
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)