ubuntu误删/etc/passwd文件导致登录系统失败 修复方法
本来准备备份ubuntu的/etc/passwd文件,结果cp命令写成了mv命令,导致移动后系统没有passwd文件。无法进入root,只能重启;重启后无法登陆系统(停留在grub)引导界面
解决方案一:制作liveCD u盘引导来修复文件
网上搜了一些修改启动ubuntu的grub引导内容的方法,都没有奏效,停留在‘loading initial ramdisk’,最后采用liveCD制作的启动盘修复的
制作liveCD u盘引导
相当于制作一个linux的u盘安装程序
-
迅雷下载iso文件Ubuntu 14.04.2 LTS
-
安装UltraISO
-
使用UltraISO制作U盘启动盘 a. UltraISO直接打开ubuntu的iso文件可能不正常,win8系统下在ubuntu的iso上点右键,打开方式,选择Mount,也就是把这个iso加载成虚拟光驱。然后在UltraISO里面,选打开光驱,之后再选“写入硬盘镜像”,写到USB里就行了。
-
设置系统U盘启动:开机的时候按F12,打开Boot Menu,选USB×××, 重启 a. 之前安装了ubuntu启动项,也可以到ubuntu启动项中选择最后一个”System setup”
-
开机后光标放到第一个选项”Try Ubuntu without install”,不要点回车, 输入”e”编辑引导模式.
-
将导数第二行结尾”quiet splash–” 改为”ro init=/bin/bash”, 按F10启动
-
稍等一下后会以root登入(u盘上的)系统
// 在u盘上的ubuntu新建一个文件夹,用于挂载原来硬盘上的ubuntu分区
mkdir ~/tmp/
// 挂载原来ubuntu在硬盘上的分区到新创建的tmp文件夹.
// 原来我创建的ubuntu在分区'dev/sda9/'上, 不同的人可能不同,可以逐一挂载,
// 然后ls查看一下目录下面的文件对不对
mount /dev/sda9 ~/tmp/
// ls 查看一下目录下文件是不是安装ubuntu的那个分区
ls ~/tmp/
// 复制文件
// 我当时是把文件备份了,如果没有备份,可以把u盘上的passwd文件复制给硬盘上的ubuntu系统
// 'cp /etc/passwd ~/tmp/etc/'
cp ~/tmp/etc/passwd.20150407 ~/tmp/etc/passwd
// 复制完了查看一下, 有passwd文件,且不是空文件
ls -al ~/tmp/etc/pass\*
// 搞定了,重新设置启动项为ubuntu启动项排在第一,就可以按正常顺序启动了