如何恢复已删除的/ etc / passwd文件?

我删除了/etc/passwd文件,现在无法登录。 我不知道root密码并尝试了很多密码,但它们都没有工作。

我怎样才能解决这个问题?

这个问题似乎已经有了合适的答案,我只想扩展@Lekensteyn的评论 :

 sudo cp /var/backups/passwd.bak /etc/passwd sudo chmod 644 /etc/passwd 

以下是以图形方式执行此操作的步骤:

  1. 使用Ubuntu可启动媒体启动到实时Ubuntu环境;

  2. 启动Nautilus文件管理器并挂载您的Ubuntu分区 (在快照中,它是129 GB文件系统 ); snap1

    按Ctrl + L查看分区的UUID。) snap2

  3. 以root权限启动Nautilus(按Alt + F2并键入gksu nautilus并按Enter键); snap3

  4. Ubuntu分区应该在侧栏中显示其UUID。 单击以安装它,然后转到/etc目录; snap4

  5. /etc目录中,向下滚动以找到名为passwd-并在目录中复制此文件( 按住 Ctrl键,将鼠标指针放在文件上, 按住鼠标左键拖动鼠标指针,然后释放鼠标按钮,然后按Ctrl键在同一目录下passwd- (copy) ;将创建一个名为passwd- (copy)的文件); 就要垮掉

  6. 选择复制文件,右键单击并选择重命名 。 然后将文件重命名为passwd ; snap6

  7. 将文件重命名为passwd右键单击并从上下文菜单中选择Properties ,并在选项卡权限中设置相应的权限,即所有者root应具有读写权限,而GroupOthers设置对Read的访问权限– 只关闭属性窗口; snap7

  8. 现在重新启动系统,您应该可以使用密码登录。


您可以在实时环境中使用终端执行相同操作。

步骤:

  1. 启动到Ubuntu会话;

  2. 打开终端或tty并输入命令:

     sudo fdisk -l 

    (并注意您的Ubuntu分区的设备名称,其格式为/dev/sdX 。)

  3. 安装设备,

     sudo mount /dev/sdXY /mnt 

    (用你的目标设备repace sdXY 。)

  4. cd到目标系统/etc目录:

     cd /mnt/etc 
  5. 使用备份文件还原,并设置适当的权限:

     sudo cp passwd- passwd sudo chmod 644 passwd 

    或者使用/var/backups/passwd.bak的备份:

     sudo install -m 644 /mnt/var/backups/passwd.bak /mnt/var/backups/passwd 

    (正如Lekensteyn在他的评论中指出的那样)

  6. 然后重新启动计算机:

     sudo reboot 

如果你可以登录只是打开终端并试试这个:

 sudo cp /etc/passwd- /etc/passwd sudo chmod 644 /etc/passwd 

其他

启动进入恢复模式或从Ubuntu live Cd启动。 然后,安装旧驱动器:

 mkdir /olddrive mount /dev/hda5 /olddrive assuming that your old drive is on /dev/hda5. then, cd to /olddrive/etc type: echo "root::0:0:Superuser:/:/bin/bash" > passwd 

然后重启。 这将不会为root设置passwd。

然后,您可以登录,重新创建所有帐户等。

您也可以使用称为(我认为) /etc/passwd-的备份

编辑:(另一种方法“我不认真,我认为它也应该工作”)

  • 启动时启动GRUB(启动时按ESC键)
  • 按e结束(恢复模式)
  • 将e按在以kernel开头的行上
  • 按空格键并输入“ init=/bin/bash
  • 按enter键
  • 按b
  • 在命令提示符下键入:“ cp /etc/passwd- /etc/passwd
  • 再次重新启动到GRUB
  • 按e结束(恢复模式)
  • 将e按在以kernel开头的行上
  • 按空格键并输入“init = / bin / bash”
  • 按enter键
  • 按b
  • 在命令提示符下键入“ mount -o remount,rw /
  • 键入“passwd YOURUSERNAMEHERE”(如果您不知道您的用户名类型为“ls / home”(即小写字母L和小写字母S),则表示用户列表)
  • 在提示时输入新密码
  • 重新启动到正常启动。

资源