如何重置丢失的密码(使用恢复模式要求我输入密码)?
我需要重置密码。 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系统,即使是非管理用户
-
如果您还没有,请编写Ubuntu实时USB闪存驱动器(在Ubuntu , Windows或Mac OS X上 ),或刻录Ubuntu live CD / DVD(在Ubuntu , Windows或Mac OS X上 )。
-
如果您知道包含Ubuntu系统根文件系统的分区的设备名称,请跳到步骤5 。
-
在您的Ubuntu系统(不是Live CD / DVD / USB系统)中,在终端中运行此命令:
mount | grep ' on / '
你应该在
/
之前和之后包括空格。 -
该命令产生
/dev/sda1 on / type ext4 (rw,errors=remount-ro,commit=0)
作为输出。 之前的文本(不包括空格)是包含Ubuntu系统根文件系统的分区的设备名称。 记住它(或写下来)。 -
从Live CD / DVD / USB启动计算机并选择Try Ubuntu而不安装 (不安装Ubuntu )。
-
打开终端窗口( Ctrl + Alt + T )。
-
运行此命令:
sudo mount /dev/sda1 /mnt
将
/dev/sda1
替换为包含Ubuntu系统根文件系统的分区的设备名称(如果不同)。如果您收到有关设备或分区不存在或“未知文件系统类型”的错误消息,那么您可能使用了错误的设备名称或分区号。 如上所述,您的系统的根分区可能不是
/dev/sda1
。 -
运行此命令:
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
卸载它,然后继续安装正确的分区。 -
执行以下任务之一,以获取/恢复对安装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
替换为您要授予管理员权限的用户帐户的名称。
-
-
运行以下三个命令:
exit sudo umount /mnt exit
这些命令中的最后一个退出终端窗口。
-
单击屏幕右上角的电源图标并单击“关机”重新启动系统。 (然后在出现的对话框中单击“ 重新启动 ”。)确保在系统再次启动之前卸下CD / DVD或USB闪存驱动器,以便可以进入硬盘上的Ubuntu系统。
- 如果您运行的是足够旧的Ubuntu live CD,并且电源菜单中有“ 重启”选项,则应单击该选项而不是“关机” 。
如果您根本无法使用已安装的Ubuntu系统
如果您无法登录以获取包含Ubuntu系统根文件系统的分区的设备名称,则可以在启动Live CD后进行计算。 有几种方法可以做到这一点。 我在这里提出一个我认为最简单且最不可能导致错误的人。 (但是,您可能也对此其他方法感兴趣。)
-
如果您还没有,请刻录Ubuntu live CD / DVD(在Ubuntu , Windows或Mac OS X上 )或编写Ubuntu live USB闪存盘(在Ubuntu , Windows或Mac OS X上 )。
-
从Live CD / DVD / USB启动计算机并选择Try Ubuntu而不安装 (不安装Ubuntu )。
-
打开GParted。
-
要在Unity中执行此操作 ,这是大多数Ubuntu版本中的默认桌面环境,请单击主页按钮(即屏幕左上角带有Ubuntu徽标的按钮)或按Super ,这也是称为Windows密钥。 然后输入
gparted
。 GParted会出现,你可以点击它。 -
Ubuntu 17.10及更高版本将GNOME 3与GNOME Shell一起使用而不是Unity。 要打开GParted,请单击屏幕左下角显示的九个点的网格以打开应用程序面板。 然后单击GParted图标。
特别感谢Videonauth解释如何在GNOME 3中打开GParted,以及提供这些截图。 1 -
在使用GNOME 2而不是Unity或Unity 2D界面的非常旧版本的Ubuntu上,通过单击系统 → 管理 → GParted分区编辑器从顶部菜单打开GParted。
-
其他Ubuntu风格 ,如Ubuntu MATE,Xubuntu和Lubuntu,都有一个类似的嵌套菜单系统,通过它可以访问GParted,同时从现场USB或实时CD / DVD运行它们。
-
-
现在,您可以以图形方式查看所有分区。 如果您有多个驱动器,则可能需要在GParted右上角的下拉菜单中选择包含Ubuntu系统的驱动器。
-
包含Ubuntu系统根文件系统的分区很可能是
ext4
类型的大型分区(或者对于非常旧的Ubuntu系统,ext3
)。 通常只有一个ext4
(或ext3
)分区,或者只有一个大分区。 否则,一个可能是/
partition(包含根文件系统,这是你想要的),另一个可能是/home
分区。 因此,如果有两个大的ext4
或ext3
分区,您可以假设第一个分区(显示在最左侧)可能是包含系统根文件系统的分区。这可能是错误的,但如果你这样做,那么这些指令都不会损坏任何东西。 在其他一些情况下,除了这篇文章中描述的行动之外,做出这个假设并不一定是安全的。
-
记住或记下(可能)包含根文件系统的分区的设备名称。 GParted向您展示了这一点。 它通常采用
/dev/sd Xn
forms,其中X
是小写字母,n
是数字。 -
退出GParted。
-
按照上面的说明(“ 如果您可以以非管理用户身份登录 ”),从步骤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"
显然没有引号