问题描述
我正在开发一个Ubuntu系统,而我的客户已经完全忘记了他的管理密码。他甚至不记得输入一个;但它在那里。
我已经尝试了网站上的建议,并且我在删除密码方面没有成功,因此我可以下载运行某些文件所需的小程序。有解决方案吗?
最佳解决思路
默认情况下,第一个用户的帐户是管理帐户,因此如果UI提示您输入密码,则可能是该用户的用户密码。如果用户不记得他们的密码,你需要重置它。要做到这一点,你需要启动到恢复模式。
启动机器,在BIOS屏幕后,按住左侧的Shift
键。然后你会看到如下所示的菜单提示:
我注意到在某些系统上,什么时候点击左边的Shift
键可能会非常棘手,有时我会错过它,需要再次尝试。
点击向下箭头,直到您从顶部(具有描述中的恢复模式的那个)选择第二个条目,然后点击Enter
。
现在你应该看到这个菜单:
使用箭头键向下滚动到根目录,然后点击Enter
。
你现在应该看到一个根提示,就像这样:
root@ubuntu:~#
在这个阶段你应该有一个read-only文件系统。您必须用写入权限重新安装它:
mount -o rw,remount /
现在我们可以用passwd
命令设置用户的密码。 (在这个例子中,我将使用jorge作为例子,你需要替换用户的用户名):
root@ubuntu:~# passwd jorge
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
root@ubuntu:~#
输入你想要的新密码在提示符下。成功重启机器后,用户将能够使用新密码登录。
有人担心这是一个安全漏洞。不是这样。你需要物理访问机器来做到这一点。如果有人可以通过物理方式访问您的电脑,那么他们可能会做得比改变密码更糟糕。当涉及到物理访问时,安全战争就失去了。警惕你让你的电脑上的人。
即使设置root密码也不会成功,因为可以简单地使用init
作为/bin/sh
引导并具有完全的根访问权限。再次,给予物理访问权限,任何拥有计算机知识的人都可以为您的计算机做任何事情。
次佳解决思路
是的,您可以通过GRUB更改旧密码。
-
如果您有single-boot(Ubuntu是您计算机上唯一的操作系统),要启动菜单以显示,您必须在启动过程中按住
Shift
键。 -
如果您有dual-boot(Ubuntu安装在Windows旁边,另一个Linux操作系统或Mac OS X;并且您在引导时选择哪个操作系统启动),引导菜单应该显示,而不需要按住
shift
键。 -
从启动菜单中,选择恢复模式,通常是第二次启动选项。
-
选择恢复模式并等待所有boot-up过程完成后,您将看到几个选项。在这种情况下,您希望将Drop to root shell提示选项按下
ᛎ
向下箭头以转到该选项,然后按Enter
将其选中。 -
一旦你在root shell提示符下,如果你忘记了你的用户名,输入
ls /home
(小写字母和不是大写字母)。这将列出您设置中的所有用户帐户。 -
要重置密码,请键入
passwd username
,其中username是要重置的用户名,例如,passwd mysterio
就是我的情况。 -
系统会提示您输入新密码。当你输入密码时,你将不会收到视觉回复,确认你的输入。您的密码仍被接受。只需输入密码并在完成后点击
Enter
。系统会提示您重新输入密码。这样做并再次点击Enter
。 -
现在应该重置密码。键入
exit
以返回到恢复菜单。 -
回到恢复菜单后,选择恢复正常启动,并像平常一样使用Ubuntu – 只有这一次,您确实知道密码!
第三种解决思路
如果Jorge’s method不适用于您,因为它不适合我,这里是另一种方法。我不得不尝试不同的东西,因为:
-
我的USB键盘无法在根提示下工作⋯可能是键盘或主板的硬件。为了解决问题,我使用了一个旧的PS /2键盘(小圆形插头)并使用它。
-
当我使用
passwd username
更改密码时,由于令牌不正确等原因而失败。这要求采取严厉措施。
激烈的措施
这是一件非常危险的事情!应使用Jorge’s method;只有在该方法无效的情况下才能执行此操作。
这样做需要您自担风险。它在我的11.10系统上为我工作。
这个想法是将用户的密码设置为空(或空) – 这允许您只需在Password:
提示符处按Enter
即可。
仍然在Jorge’s method的根提示符处,首先使用以下命令将根文件系统重新挂载为read-write:
mount -o remount,rw /
-
现在你是这个系统上的super-user。轻轻地踩。
然后编辑密码影子文件以删除用户名的加密密码。输入:
nano -B /etc/shadow
nano编辑器将显示文件的内容。每行的格式为name:⋯:⋯:⋯…
,其中⋯是字符串或空(空)。其中一行将以您的用户名开头。第一个⋯在您的用户名后是您的加密密码。举个例子:
username:$1$amFeNcjp$PprjCKEVk3UtzKwWfEMOY0:14920:0:99999:7:::
$1$amFeNcjp$PprjCKEVk3UtzKwWfEMOY0
是加密的密码。
仔细删除加密的密码,留下所有”:”,因此它看起来像这样:
username::14920:0:99999:7:::
然后键入Ctrl
+ O
,按下Enter
键保存,然后键入Ctrl
+ X
关闭nano。
重新启动,你将有一个空的(或空)密码。请务必在终端中使用passwd username
来设置或重置用户密码。
PS /2解决方法的源代码是here。
nano上的注意事项 – -B
选项会对原始编辑文件进行备份,并附加相同名称并带有”~”。
第四种思路
如果您忘记了Ubuntu系统的密码,则可以使用以下步骤进行恢复:
-
打开电脑。
-
在GRUB提示符下按
ESC
。 -
按
e
进行编辑。 -
突出显示开始
kernel .........
或linux ........
的行,按e
-
转到行的最后并添加
rw init=/bin/bash
-
按
Enter
,然后按b
启动您的系统。您的系统将启动到无密码的root shell -
现在发出命令
passwd username
*,其中”username”是要更改其密码的用户。 -
然后您将被要求提供新密码:
Enter new UNIX password:
1来源:ubuntugeek
其他资源:
对于Xubuntu 14.04,请按照下面的屏幕。这与其他一些答案类似。
按Esc
,然后选择高级选项
选择恢复模式:
然后选择root,一旦你得到提示键入passwd <user_name>
,就更改密码。
第五种思路
如果恢复模式被禁用,我将使用的方法是启动到Live CD或USB。它可能是您安装的媒体,或者是您下载并烧录的另一个Ubuntu ISO。这个过程非常简单。
-
启动到Live媒体。
-
从菜单中打开一个终端。
-
找出主磁盘的设备名称。
sudo fdisk-l
将列出所有分区。从列表中派生你的分区。我们正在寻找像/dev/sda1
(它可能会) -
将它安装到某处,以便我们可以使用它(显然,将磁盘更改为正确的磁盘):
sudo mount /dev/sda1 /mnt
-
Cross-mount从Live安装的东西,所以我们可以”use”安装的磁盘(只需复制和粘贴):
for d in dev sys run proc; do sudo mount --bind /$d /mnt/$d; done
-
通过运行
sudo chroot /mnt
在系统上成为root用户。你现在可以在真正的安装上做任何事情。 -
设置帐户的密码:
passwd username
-
重新启动,你就完成了。
第六种思路
Ubuntu不带有Administrative
密码。只有一个初始帐户,即用户帐户,可用于执行管理任务。例如,获取您运行的root shell
$ sudo -i
[sudo] password for myuseraccount: # here you type the user's password
#
许多具有Unix背景或其他发行经验的人经常遇到这个问题。
命令
su
将始终失败,因为root
帐户被锁定;它无法直接访问,或者无法直接登录到root
。
使用sudo
设备有很大的优势。
第七种思路
从官方的Ubuntu LostPassword文档:
-
重新启动您的计算机
-
启动期间保持
Shift
以启动GRUB菜单 -
突出显示您的图像并按
E
进行编辑 -
找到以”linux”开头的行,并在该行末尾追加
rw init=/bin/bash
-
按
Ctrl
+X
启动。 -
输入
passwd username
-
设置你的密码。
-
输入
reboot
。如果这不起作用,请点击Ctrl
+Alt
+Del
这也适用于Linux Mint 14。
第八种思路
首先,您必须重新启动到恢复模式。
如果您有single-boot(Ubuntu是您计算机上唯一的操作系统),要启动菜单以显示,您必须在启动时按住Shift键。从启动菜单中,选择恢复模式,通常是第二次启动选项。选择恢复模式并等待所有boot-up进程完成后,将出现几个选项。在这种情况下,您希望将Drop to root shell提示选项按下向下箭头以转到该选项,然后按Enter键将其选中。
根帐户是最终的管理员,可以对Ubuntu安装做任何事情(包括清除它),所以请注意您在根端输入的命令。
一旦你在root shell提示符下,如果你忘记了你的用户名,输入
ls /home
这是一个小写的L,顺便说一下,不是我在ls的资本。然后,您应该看到Ubuntu安装中的用户列表。在这种情况下,我要重置Susan Brownmiller的密码。
要重置密码,请键入
passwd username
其中username是要重置的用户名。在这种情况下,我想重置Susan的密码,所以我输入
passwd susan
系统会提示您输入新密码。当你输入密码时,你将不会收到视觉回复,确认你的输入。您的密码仍被接受。只需输入密码并在完成后按下Enter键。系统会提示您重新输入密码。这样做并再次点击Enter。
现在应该重置密码。
键入exit
返回到恢复菜单。
回到恢复菜单后,选择恢复正常启动,然后像平常一样使用Ubuntu,只有这一次,您确实知道密码!
第九种思路
我能够使用豪尔赫的方法 – 上面的一个漂亮的屏幕截图 – 有一些小的变化。我使用的是Ubuntu 11.10
首先,启动时 – 不要按左移键直到BIOS屏幕变黑,然后立即按住左移键。
然后,在大概一分钟后,屏幕上滚动了一些文本行,我得到了第一个菜单,但少了几行 – 我选择了第二行。
然后我得到了恢复菜单 – 但是当我选择Drop to Root Shell Prompt(底部项目)时,我是root用户,但无法重置密码 – 因为磁盘是只读的。键入退出并返回到恢复菜单
有一个选择(在Jorge的屏幕截图中未显示)重新读取读取/写入使用向下箭头去它,然后左箭头去和Enter – 并且它安装了磁盘RW。
然后再次下降到根壳提示符,我是根,可以写 – 所以passwd用户名让我输入所需的密码两次 – 然后退出回到恢复菜单恢复正常启动,一切正常,用我的新密码!我是这个盒子上唯一的帐户,我的密码与sudo一起工作,所以我显然拥有管理特权。
这比编辑/etc /shadow更令人兴奋,但我很高兴交换兴奋的结局。
第十种思路
我的密码有同样的问题,我尝试了所有人的建议,但都没有为我工作。所以我尝试了一些我自己的东西,这对我来说是有效的……“请记住,我无法解释它为什么起作用,我所知道的只是它的工作原理……
“10个简单而简单的步骤来重置丢失或忘记的密码”
-
重新启动电脑并按住左Shift键。
-
选择启动进入恢复模式。
-
几秒钟后,您应该看到“恢复模式选项”屏幕。注意:(这里是我无法解释的部分,在尝试了所有内容并且没有任何工作之后,我最终开始尝试所有选项,当我尝试
"grub Update grub boot loader"
,然后执行其余的步骤时,以及密码被重置。)因此在进入"root Drop to root shell promt"
选择之前, -
选择
"grub Update grub boot loader"
,你应该得到这个屏幕。 -
选择
"Yes"
。等待它通过更新。 -
现在选择
"root Drop to root shell prompt"
。 -
现在你应该在根终端上,像下面这样:
youracctname@yourcompname:~$.
类型passwd accountname
(acountname是你试图更改密码的帐户的名称)。 -
Enter new Unix password:
“输入新密码”。 -
Retype new Unix password:
“重新输入您在Step-8中输入的密码”。 -
它应该确认密码更改成功。在提示符下键入
exit
并重新引导。
如果这不起作用,请尝试跳过步骤4和步骤4。 5 …