如何重置丢失的密码(使用恢复模式要求我输入密码)?

我需要重置密码。 I have followed these steps:

如何重置丢失的管理密码?

However, then I go to “root” or “netroot” recovery options, it tells me:

function gtElInit() {var lib = new google.translate.TranslateService();lib.translatePage('en', 'zh-CN', function () {});}Give root password for maintenance (or type Control-D to continue) 

显然,我不知道root密码。 如果我输入CTRL + D ,我将返回选项列表。 从这个页面我读到:

在“其他方式”一章下:

 4. Highlight the line that begins kernel and press 'e' to edit` 

但是在grub配置文件中,我没有以kernel开头的行。 只要:

 setparams 'Ubuntu...' recordfail set gxfpayload... insmod part_msdos insmod ext2 set root=... search --no-floppy... linux /boot/vmlinuz-2.6.38... initrd /boot/initrd.img-2.6.... 

这些都是我GRUB中的所有行。 我应该编辑哪一行? 或者还有其他方法可以重置密码吗?

由于您无法访问恢复模式 ,因此您必须通过从现场CD / DVD或实时USB系统访问已安装的Ubuntu系统来更改密码。 以下是有关如何执行此操作的详细演练。

如果您已经可以使用Ubuntu系统(即使没有管理员权限),这也是最简单的。 但如果你做不到,那就不难了。

  • 根据我的经验,大多数最终被锁定在自己系统之外的Ubuntu用户都启用了自动登录,这就是他们忘记密码的方式(因为他们不必输入密码来登录)。 在您的情况下可能会或可能不是这种情况,但如果您可以首先使用已安装的Ubuntu系统,我已经介绍了如何执行此操作,因为我认为这将有助于阅读此post的大多数人。

如果您可以使用已安装的Ubuntu系统,即使是非管理用户

  1. 如果您还没有,请编写Ubuntu实时USB闪存驱动器(在Ubuntu , Windows或Mac OS X上 ),或刻录Ubuntu live CD / DVD(在Ubuntu , Windows或Mac OS X上 )。

  2. 如果您知道包含Ubuntu系统根文件系统的分区的设备名称,请跳到步骤5

  3. 在您的Ubuntu系统(不是Live CD / DVD / USB系统)中,在终端中运行此命令:

     mount | grep ' on / ' 

    你应该在/之前和之后包括空格。

  4. 该命令产生/dev/sda1 on / type ext4 (rw,errors=remount-ro,commit=0)作为输出。 之前的文本(不包括空格)是包含Ubuntu系统根文件系统的分区的设备名称。 记住它(或写下来)。

  5. 从Live CD / DVD / USB启动计算机并选择Try Ubuntu而不安装 (不安装Ubuntu )。

  6. 打开终端窗口( Ctrl + Alt + T )。

  7. 运行此命令:

     sudo mount /dev/sda1 /mnt 

    /dev/sda1替换为包含Ubuntu系统根文件系统的分区的设备名称(如果不同)。

    如果您收到有关设备或分区不存在或“未知文件系统类型”的错误消息,那么您可能使用了错误的设备名称或分区号。 如上所述,您的系统的根分区可能不是/dev/sda1

  8. 运行此命令:

     sudo chroot /mnt 

    为了能够重置密码,或者能够更改用户所属的组,您需要做的就是chroot。特别是, 您不需要安装其他文件系统,/dev/dev/pts/sys/proc 。 更复杂的 chrooting程序,允许您完全使用您被chrootin的系统 – 例如,更新和安装其中的软件 – 确实需要,以及进入chroot后的其他步骤,但事实并非如此。

    如果您运行sudo chroot /mnt并且看到此消息,它几乎总是意味着您将错误的分区挂载到/mnt –remember,它实际上并不是所有系统上的/dev/sda1 – 尽管它也会发生你删了/bin/bash

     chroot: failed to run command '/bin/bash': No such file or directory 

    如果确实发生了这种情况,那么可以使用sudo umount /mnt卸载它,然后继续安装正确的分区。

  9. 执行以下任务之一,以获取/恢复对安装Ubuntu系统的访问权限。

    • 如果要重置用户密码:

       passwd username 

      用您的用户名替换username名。 (这是安装在硬盘驱动器上的系统上的用户名,而不是“ubuntu”,它是Ubuntu桌面安装CD上默认用户的用户名。)

      输入该用户所需的密码。

      • 如果您不知道用户名,可以通过运行以下命令获取系统上的用户列表:

         ls /home 

        这是因为/home包含所有用户的主目录 ,并且用户主目录的名称与用户名相同。

    • 或者,如果要设置/重置root密码:

      由于您位于root shell中,因此可以使用不带参数的passwd命令来重置root的密码:

       passwd 

      但请参阅此页面 ,其中解释了为什么不建议在Ubuntu中启用root帐户。

    • 或者,如果您想让用户成为管理员(这样他们就可以执行管理操作,包括以sudo身份运行root sudo ):

      在Ubuntu 12.04及更高版本中(您可以运行lsb_release -r来查看您拥有的Ubuntu版本,只需确保 chroot运行它或者它将告诉您Live CD的版本),运行:

       usermod -a -G sudo username 

      在Ubuntu 11.10及更低版本中,管理组的成员资格而不是sudo组授予了管理能力。 那么你会改为运行:

       usermod -a -G admin username 

      在这两种情况下,将username替换为您要授予管理员权限的用户帐户的名称。

  10. 运行以下三个命令:

     exit sudo umount /mnt exit 

    这些命令中的最后一个退出终端窗口。

  11. 单击屏幕右上角的电源图标并单击“关机”重新启动系统。 (然后在出现的对话框中单击“ 重新启动 ”。)确保在系统再次启动之前卸下CD / DVD或USB闪存驱动器,以便可以进入硬盘上的Ubuntu系统。

    • 如果您运行的是足够旧的Ubuntu live CD,并且电源菜单中有“ 重启”选项,则应单击该选项而不是“关机”

如果您根本无法使用已安装的Ubuntu系统

如果您无法登录以获取包含Ubuntu系统根文件系统的分区的设备名称,则可以在启动Live CD后进行计算。 有几种方法可以做到这一点。 我在这里提出一个我认为最简单且最不可能导致错误的人。 (但是,您可能也对此其他方法感兴趣。)

  1. 如果您还没有,请刻录Ubuntu live CD / DVD(在Ubuntu , Windows或Mac OS X上 )或编写Ubuntu live USB闪存盘(在Ubuntu , Windows或Mac OS X上 )。

  2. 从Live CD / DVD / USB启动计算机并选择Try Ubuntu而不安装 (不安装Ubuntu )。

  3. 打开GParted。

    • 要在Unity中执行此操作 ,这是大多数Ubuntu版本中的默认桌面环境,请单击主页按钮(即屏幕左上角带有Ubuntu徽标的按钮)或按Super ,这也是称为Windows密钥。 然后输入gparted 。 GParted会出现,你可以点击它。

    • Ubuntu 17.10及更高版本将GNOME 3与GNOME Shell一起使用而不是Unity。 要打开GParted,请单击屏幕左下角显示的九个点的网格以打开应用程序面板。 然后单击GParted图标。

      在Videonauth提供的Ubuntu 17.10现场环境中GNOME 3和GNOME Shell的两个屏幕截图,并排放置,添加了手绘标记以显示按钮用于*应用程序面板*的位置,以及GParted的内容图标看起来像在应用程序面板中。请注意,此图标标记为GParted,因此无需通过图标的外观识别它。
      特别感谢Videonauth解释如何在GNOME 3中打开GParted,以及提供这些截图。 1

    • 在使用GNOME 2而不是Unity或Unity 2D界面的非常旧版本的Ubuntu上,通过单击系统管理GParted分区编辑器从顶部菜单打开GParted。

    • 其他Ubuntu风格 ,如Ubuntu MATE,Xubuntu和Lubuntu,都有一个类似的嵌套菜单系统,通过它可以访问GParted,同时从现场USB或实时CD / DVD运行它们。

  4. 现在,您可以以图形方式查看所有分区。 如果您有多个驱动器,则可能需要在GParted右上角的下拉菜单中选择包含Ubuntu系统的驱动器。

  5. 包含Ubuntu系统根文件系统的分区很可能是ext4类型的大型分区(或者对于非常旧的Ubuntu系统, ext3 )。 通常只有一个ext4 (或ext3 )分区,或者只有一个大分区。 否则,一个可能是/ partition(包含根文件系统,这是你想要的),另一个可能是/home分区。 因此,如果有两个大的ext4ext3分区,您可以假设第一个分区(显示在最左侧)可能是包含系统根文件系统的分区。

    这可能是错误的,但如果你这样做,那么这些指令都不会损坏任何东西。 在其他一些情况下,除了这篇文章中描述的行动之外,做出这个假设并不一定是安全的。

  6. 记住或记下(可能)包含根文件系统的分区的设备名称。 GParted向您展示了这一点。 它通常采用/dev/sd Xnforms,其中X是小写字母, n是数字。

  7. 退出GParted。

  8. 按照上面的说明(“ 如果您可以以非管理用户身份登录 ”),从步骤6开始。

这篇文章最初改编自9号文章,我在此Launchpad Answers问题中写道。

1 来自Videonauth向我解释如何在Ubuntu 17.10实时环境中启动GParted。 我没有GNOME 3,否则无法提供这些说明。 他还提供了两个截图。 (我添加的只是丑陋的手绘箭头和圆圈。)

如果您需要更改root密码但不知道旧密码。 您将需要删除到root shell。 当您启动计算机时,一旦BIOS屏幕消失(带有计算机徽标的srceen),开始点击Shift键直到grub菜单出现,如果此选项不起作用,则点击esc键。 (如果它已配置为出现,则此步骤不是nessessery)

当您看到菜单时,选择最新内核(或您通常使用的内核)的选项并选择下面名为“恢复模式”的选项它应如下所示:

在此处输入图像描述

这将带您进入如下所示的菜单: 在此处输入图像描述

接下来选择Root选项

等等,让一切都加载,直到你得到一个shell。 现在来了很有趣; 输入以下命令:

 passwd "your username" (no qoutes though) 

如果您不确定自己的用户名,可以通过以下方式查看家庭浏览器中文件的名称:

 cd /home 

比进入

 ls 

这将显示计算机上用户的名称。

现在输入我上面说的命令; passwd“你的用户名”没有qoutes。 因此,如果您的用户名是jane,我会输入:

 passwd jane 

接下来,您将看到输入新的unix密码的选项。 这是您输入密码的地方。 它会要求您重新键入命令,然后在输入两个成功的密码后,密码已更改。 现在重新登录系统

 reboot 

如果在输入新密码时要求输入root密码,通常会有所帮助:

第二步可能

“如果在进入单用户模式时询问root密码,请在内核附加行使用’init = / bin / bash’,该行应该将机器引导到bash控制台,在那里你可以获得对/ etc /的读/写访问权限然后你可以运行passwd或者直接编辑shadow文件以放入一个空字符串。这允许你将机器重新启动到正常环境并以root身份登录,将密码留空,然后运行passwd程序来设置root密码。这应该只在机器与任何网络分离时才能完成。“ (摘自下文提到的文章中的肖恩李)

如果您需要更多信息,这些链接有助于:

https://wiki.ubuntu.com/RecoveryMode

http://www.psychocats.net/ubuntu/resetpassword

http://www.debuntu.org/recover-root-password-single-user-mode-and-grub

http://www.debianadmin.com/how-to-reset-debian-root-password.html

如果设置了root密码并且您忘记了它,但可以正常启动并且可以使用sudo从终端尝试此操作

 sudo passwd -dl root 

如果您获得正常(和sudo)密码并且根目录混淆,则不明显。

您重置passwd的链接通常可以正常工作。

这里。 这可能有助于如何在Ubuntu中重置密码
或者只需在Grub菜单中选择“恢复模式”,然后选择提示类型

passwd "your username"显然没有引号