Centos6.5 误删/etc/passwd 系统无法正常启动 救援模式下恢复

背景:想比大家和我一样,在测试数据的时候,不小心使用追加符号">"等,将存放用户信息文件/etc/passwd覆盖,导致文件丢失,重启系统,发现系统已经无法启动,在百度查询解决办法,都没有给出实用方案,大多都是进入单用户模式 cp /etc/passwd-文件,但问题是单用户都进不去,下面我们一起来解决。

启动报错截图参考:

Centos6.5 误删/etc/passwd 系统无法正常启动 救援模式下恢复_第1张图片

下面开始恢复-z-

目录

一、救援模式修复/etc/passwd文件

1、关闭虚拟机

2、进入BIOS修改启动项光盘启动

3、Rescue installed system 救援模式

4、修复工作


一、救援模式修复/etc/passwd文件

1、关闭虚拟机

目前处于相当于卡机状态,如果是虚拟机直接“关闭客户机就行”( Ctrl+e)

Centos6.5 误删/etc/passwd 系统无法正常启动 救援模式下恢复_第2张图片

2、进入BIOS修改启动项光盘启动

开机按钮那儿选择“打开电源时进入固件”(F)

Centos6.5 误删/etc/passwd 系统无法正常启动 救援模式下恢复_第3张图片在Boot选项中调整启动项,将“CD-ROM Drive”调整到启动默认第一项,切记最后F10保存退出;

Centos6.5 误删/etc/passwd 系统无法正常启动 救援模式下恢复_第4张图片

3、Rescue installed system 救援模式

重启后进入安装菜单,选中Rescue install system 后回车

Centos6.5 误删/etc/passwd 系统无法正常启动 救援模式下恢复_第5张图片

选择语言:English(默认)

选择键盘类型:us(默认)

Setup Networking:NO(根据情况而定)

Centos6.5 误删/etc/passwd 系统无法正常启动 救援模式下恢复_第6张图片

Rescue:Continue(继续)

系统挂载在/mnt/sysimage,如果要切换到root环境下,运行chroot /mnt/sysinage 命令

我们看到三种选项:shell进入命令行模式;fakd诊断模式;reboot重启电脑,我们现在选择shell;

Centos6.5 误删/etc/passwd 系统无法正常启动 救援模式下恢复_第7张图片

进入shell命令行模式,提示符为bash-4.1#  ,继续执行命令 chroot /mnt/sysinage ,命令提示符为 sh-4.1#

4、修复工作

查看/etc/passwd文件缺失以及没有文件了,cp /etc/passwd- /etc/passwd copy一个bak文件过来;

Centos6.5 误删/etc/passwd 系统无法正常启动 救援模式下恢复_第8张图片

确认有用户文件了,操作完成后,首先要先退出exit,回到bash-4.1#才可以reboot重启系统哦~

 

同样需要修改启动项,大约需要5min,系统启动恢复正常了,完事!!

goodboy! 完事儿了

Centos6.5 误删/etc/passwd 系统无法正常启动 救援模式下恢复_第9张图片

本文借鉴文献:

https://jingyan.baidu.com/article/4f34706e07fa5ce387b56dcc.html

https://www.2cto.com/net/201706/643397.html

你可能感兴趣的:(Linux)