安装完美,但密码不适用于登录或身份验证

Nic*_*ick 7 authentication password software-installation

我在一台旧的 XP 机器上安装了 Ubuntu(用 Ubuntu 替换了 XP),看起来一切顺利……直到我尝试下载并安装建议的更新!

我在安装过程中设置的密码不适用于身份验证。它甚至不适用于用户帐户。我想也许我输入了错误的密码(两次)并在线检查了如何更改它。在启动期间按住 shift 不会给我启动选项或 grub,所以我无法进入恢复模式!

我已经重新安装了 3 次(用 CD 两次,用 USB 一次),结果还是一样。

基本上,我确定我输入了正确的密码,所以我严重怀疑更改密码是否会有所帮助。如果我在安装过程中将其设置为这样做,它将自动登录。否则,我只能使用访客帐户,显然无法设置其他帐户或更新软件。

这是我第一次使用 Ubuntu,在它要求输入密码之前,我认为它进行得很顺利。我真诚地希望我错过了一些简单的东西,我可以让它正常工作。

我很惊讶我没有发现任何与完全相同问题的问题。请帮忙!:)

请求的信息

1: df -h

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       147G  4.7G  135G   4% /
udev           1000M  4.0K 1000M   1% /dev
tmpfs           403M  836K  402M   1% /run
none            5.0M     0  5.0M   0% /run/lock
none           1007M  176K 1007M   1% /run/shm
/dev/sdc1       7.5G  4.7G  2.8G  63% /media/PENDRIVE
patricia@[computer name removed by me just in case it shouldn't be shared]
Run Code Online (Sandbox Code Playgroud)

2: dpkg -l | egrep 'lightdm|gdm|kdm|lxdm'

ii  liblightdm-gobject-1-0       1.2.1-0ubuntu1          LightDM GObject client library
ii  lightdm                      1.2.1-0ubuntu1          Display Manager
Run Code Online (Sandbox Code Playgroud)

3:关于登录虚拟控制台并尝试使用passwd和更改密码时是否出现错误信息sudo passwd $USER

  • 不,我必须先进行挂载重新挂载,但它说在那之后密码已成功更改。它还告诉我我已成功登录...

新发展:

我现在可以登录到在设置过程中创建的用户帐户.... 但我仍然无法使用该密码进行身份验证!

希望我们越来越近了..非常感谢您的帮助:)

Eli*_*gan 6

总结:这个问题是如何发展的

到目前为止,这个问题似乎已经经历了两个阶段。

  1. 首先,在图形登录屏幕上根本无法登录。可以在虚拟控制台上登录。在虚拟控制台中获得的信息表明:

    • 输出df -h显示有足够的​​可用空间。众所周知,当硬盘上的可用空间为零或很少时,图形登录会失败,但这显然不是这里的问题。
    • 的输出dpkg -l | egrep 'lightdm|gdm|kdm|lxdm'表明安装的唯一显示管理器(提供登录屏幕)是 LightDM。此信息很有价值,因为无法登录的潜在解决方案可能是尝试不同的显示管理器(例如,通过安装并切换到gdm)。
    • 更改密码时,您说“必须先执行挂载重新挂载的操作,但它说之后密码已成功更改”。这向我表明您实际上是通过启动进入恢复模式而不是在虚拟控制台上更改了密码。如果我对这个假设有误解,请告诉我。
  2. 现在,您可以登录了,大概是在图形登录屏幕上输入您的用户名和密码。(如果这不正确,请务必让我知道。)但是,您无法登录后进行身份验证。因此:

    • 更改密码似乎解决了部分问题。我猜密码在安装过程中没有正确设置(可能是由于某些错误),或者它包含由于某种原因 LightDM 无法在其登录屏幕上处理的字符,或者它包含映射到不同键的字符安装过程中的键盘与 LightDM 登录屏幕上的键盘相比。使用您的新密码,您可以登录。
    • 但是,问题并未完全解决,因为您无法在登录后进行身份验证。我保留了在下面第一部分中作为原始答案提供的一般信息,标题为Password 在登录屏幕上不起作用。该信息可能对遇到类似问题的其他人有用。请跳到名为可以登录,但其他身份验证失败的部分

密码在登录屏幕上不起作用

需要检查的几件事:

  1. Caps Lock吗?
    • 同样,如果您使用数字小键盘输入某些字符,是否Num Lock打开?
  2. 您的密码是否包含异常字符?(也许您发现了一个奇怪的错误。)您是否尝试过不同的密码?
  3. 您是否使用与用于进行身份验证的键盘布局不同的键盘布局来设置密码?如果是这样,您可能正在输入一个完全不同的密码。
  4. 您的密码是否为空(即零个字符长的密码)?这不能正常工作;你需要有一个实际的密码。
  5. 也许在安装过程中出现了系统性错误。如果您从 Ubuntu ISO 映像开始,那么:

    错误的 ISO 或错误的刻录/写入会阻止安装成功是很常见的,但也有可能导致安装损坏。

至于修复这个:

  1. 您有一个五笔系统*,因此 GRUBWindows 引导加载程序之后运行。在屏幕上选择 Ubuntu,其中 Windows 和 Ubuntu 是您两个选择,然后Shift按住它,然后按Enter。这样,Shift当 Windows 引导加载程序链加载 GRUB 时,按键就会被按下。

    • *编辑:实际上,事实证明(根据您提供的信息)您没有五笔系统。我不知道为什么按住Shift不适合你。由于上述建议适用于除 GRUB 链加载到 Ubuntu 系统的 GRUB 引导加载程序之外的任何引导加载程序时,它可能仍然对您有效(或已经有效)。否则,问题可能是您Shift在启动过程中没有足够早地按住密钥,或者您过早地释放它。
  2. 不知何故,这可能是图形登录屏幕的问题。因此,您可能能够从基于文本的虚拟控制台成功登录。要尝试这样做,请启动 Ubuntu 系统,然后在图形登录屏幕出现后(或者,即使您以访客身份以图形方式登录),按Ctrl+ Alt+ F1。输入您的用户名并按Enter。然后输入您的密码并按Enter。(当您输入密码时,您不会看到任何事情发生,但这很正常。)

    如果您可以登录到虚拟控制台,请尝试通过运行命令来更改密码passwd。如果这不起作用或您仍然无法以图形方式登录,请尝试通过运行命令来更改它sudo passwd $USER

可以登录,但其他认证失败

本节假设您现在可以使用图形登录屏幕以安装期间创建的用户身份登录。也就是说,您可以通过图形用户界面使用您的 Ubuntu 系统,不仅可以作为来宾,还可以作为在安装过程中创建的用户。如果我误解了,请告诉我

您现在可以登录,但是一旦登录,就无法进行身份验证。登录主要进行三种身份验证:

  1. 执行管理任务的身份验证。当您尝试执行普通、非特权用户无法完成的操作(例如安装软件或更改系统文件)时,系统会要求您输入密码。为此,您使用与登录时相同的密码。只有当您是系统管理员时,这种身份验证才会成功。我假设这是目前失败的身份验证。如果我的假设不正确,请告诉我。

  2. 解锁屏幕的身份验证。您可以手动锁定屏幕,也可以配置屏幕保护程序来锁定它。它也可能在从睡眠(挂起到 RAM)或休眠(挂起到磁盘)中恢复时被锁定。为此,您还使用与登录时相同的密码。

  3. 身份验证以解锁您的钥匙圈。密钥环可用于存储密码(例如,用于 Internet 服务)或其他敏感数据。你的钥匙圈密码是不是一定是一样的,你使用的登录密码。不像您的登录密码,我的理解是,钥匙圈密码可以是空的,不会引起问题。

检查事项进行验证,而在记录的问题(是否要执行管理任务,解锁屏幕,或解锁钥匙圈),在很大程度上是相同暂时无法登录:点1-4下密码不起作用在登录屏幕应用(除了第 4 点不适用于密钥环密码)。

但我猜你已经考虑过了。因此,让我们关注特定于登录以执行管理任务的问题。这些是要检查东西。(请注意,这是很长,因为它提供了一些指令固定的问题,在某些情况下,实际上在检查了这些东西,一般来讲,并不是特别困难或耗时。)

你真的是管理员吗?

打开一个终端窗口(Ctrl+ Alt+ T)和运行这个命令:

groups
Run Code Online (Sandbox Code Playgroud)

它列出了您的用户帐户中的一员。要成为管理员,adminsudo(或两者)必须列出。请注意,这adm是一个不同的组,admin并且不会使您成为管理员(尽管您也应该是该组的成员)。

如果您不是管理员,您可以按照任何步骤重置丢失的密码(通常您会为此使用恢复模式,但通过编辑 GRUB 引导选项chroot从实时 CD/ DVD/USB,也可以使用)。除了运行命令之外,运行以下命令:passwd username

usermod -a -G admin username
usermod -a -G sudo username
Run Code Online (Sandbox Code Playgroud)

如果这些命令中的一个(但不是两个)失败也没关系。(如果失败,您会收到一条错误消息。如果成功,通常没有输出。)这样做是将您放入adminsudo组中的任何一个(或两者,如果它们都存在)。

是否只有某些执行管理任务的身份验证方法被破坏?

Ubuntu 实际上为管理员提供了两种底层机制来进行身份验证以执行管理任务—— sudo(它具有图形前端,例如gksu/gksudokdesudo)和PolicyKit

在终端窗口中,运行以下命令来测试 PolicyKit:

pkexec echo Success.
Run Code Online (Sandbox Code Playgroud)

系统会提示您输入密码(可能通过图形对话框,但也可能在终端窗口中)。如果身份验证成功并且该词Success.被回显给您(即,打印在终端中),则 PolicyKit 可用于执行管理任务(尽管对于特定任务,它可能仍然不起作用)。

现在运行这个命令

sudo echo Success.
Run Code Online (Sandbox Code Playgroud)

sudo以相同的方式进行测试(尽管身份验证肯定会在终端窗口中进行——您不会看到要求输入密码的图形对话框)。

现在运行这个命令,看看是否sudo以图形方式工作(即使sudo上面没有工作也运行这个,以防问题与终端接受输入的方式有关):

gksu xclock
Run Code Online (Sandbox Code Playgroud)

系统会提示您输入密码。如果成功,将运行一个简单的时钟应用程序。(您可以退出时钟应用程序。)如果失败,请运行此程序以查看问题是否gksu配置不正确:

gksudo xclock
Run Code Online (Sandbox Code Playgroud)

如果这是一个 Kubuntu 系统,那么您可能没有gksugksudo实用程序,因此请使用该kdesudo实用程序进行测试:

kdesudo xclock
Run Code Online (Sandbox Code Playgroud)

如果pkexec工作但sudogksugksudo(或kdesudo)不工作:

要么sudo的配置损坏,要么sudo本身损坏。前者更常见,也更容易修复——我将在这里介绍。(您会知道它sudo本身是否已损坏,因为您会收到有关由于所有权/权限不正确而拒绝运行的错误,或错误提示command not found。)

运行pkexec visudo以编辑/etc/sudoers,sudo的主要配置文件。在文件末尾附近,您应该会看到如下内容:

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL
Run Code Online (Sandbox Code Playgroud)
  • 如果您运行的是早于 12.04 的 Ubuntu 版本,请不要担心该%sudo行。
  • 如果您运行的是 Ubuntu 12.04 及更高版本,并且您没有从早于 12.04 的 Ubuntu 版本升级,请不要担心该%admin行(它甚至可能根本不存在)。

%admin和/或%sudo行(见上述两个项目符号点)应为未注释的凹口-即,应与开始#字符。

%admin和/或之后%sudo,应该有一个空格,后跟ALL=(ALL) ALLALL=(ALL:ALL) ALL

如果事情不是如上所述,您可以编辑文件以修复它们。由于您使用该visudo实用程序来编辑文件,因此当您尝试保存文件时,它会捕获语法错误。你应该尝试覆盖并保存它说有语法错误的文件。(sudo及其图形前端,sudoers即使文件包含一个语法错误,也将拒绝工作。)

如果您的sudoers文件中的所有内容似乎都井井有条,请尝试重新安装sudo. 假设您尚未自定义sudoers文件,请sudo通过运行以下命令重新安装:

pkexec apt-get update
pkexec apt-get --purge --reinstall install sudo
Run Code Online (Sandbox Code Playgroud)

但是,如果您已经自定义了您的sudoers文件(在此之前 - 我不是指上述编辑)并且对您来说不丢失自定义很重要,请取消--purge标记:

pkexex apt-get update
pkexec apt-get --reinstall install sudo
Run Code Online (Sandbox Code Playgroud)

如果pkexecsudogksudo工作,但gksu不起作用:

运行命令gksu-properties(但这并不需要运行的root,即与运行它pkexecsudogksudo)。确保身份验证模式设置为sudo而不是su

来源: 密码在图形应用程序 (gksu) 中不起作用?与 sudo 一起使用(有截图。)

如果pkexecsudo工作,但gksugksudo(或kdesudo)不工作:

尝试重新安装gksu/ gksudo(它们由同一个包提供):

pkexec apt-get update
pkexec apt-get --purge --reinstall install gksu
Run Code Online (Sandbox Code Playgroud)

或者,如果这是 Kubuntu 并且它kdesudo不起作用:

pkexec apt-get update
pkexec apt-get --purge --reinstall install kdesudo
Run Code Online (Sandbox Code Playgroud)

如果pkexec 不起作用,但是sudo, gksu, 和gksudo 工作:

尝试重新安装 PolicyKit:

sudo apt-get update
sudo apt-get --purge --reinstall install policykit-1 libpolkit-agent-1-0 libpolkit-backend-1-0 libpolkit-gobject-1-0
Run Code Online (Sandbox Code Playgroud)

如果pkexec有效,并且gksugksudo(或kdesudo)有效,但sudo无效:

pkexec通常以图形方式进行身份验证,例如gksu/ gksudo(或kdesudo在 Kubuntu 上)。因此,如果图形身份验证适用于 PolicyKit 和sudo基于方法的方法,并且控制台身份验证失败,则密码输入终端的方式可能存在问题。我听说过这种情况,但我不熟悉任何已知发生并修复的具体案例。(除非是由于用户在终端中输入密码错误造成的。)

如果发生这种情况,请提供更多信息:

  1. 看看sudo在一个虚拟控制台(作品Ctrl+ Alt+ F1)。这可以帮助确定是否是图形终端应用程序导致了问题。
  2. 看看是否pkexec在虚拟控制台中工作。在虚拟控制台中运行时,pkexec不会创建图形对话框。这可以帮助确定问题是否特定于sudo基于方法。
  3. su $USER在终端窗口和虚拟控制台中查看是否有效。此命令不允许您执行管理任务。它只是认证为你自己。但是这样做时它会要求输入密码(非图形方式)。这可以帮助确定输入密码以进行非图形身份验证的问题的程度。

如果:

  • 情况与上面列出的所有组合不同,
  • 这种情况是上面列出的组合之一,但是按照说明操作存在问题,或者
  • 这种情况是上面列出的组合之一,您已经按照说明操作而没有出现明显问题,但是潜在的问题(无法进行身份验证)并没有消失......

然后请编辑您的问题以提供详细信息,并在此处发表评论(有或没有 -@Eliah当您对我的回答发表评论时,我总是会收到通知)让我知道。


Max*_*her 2

我明白为什么这很糟糕。首先我想和你一起解决问题。检查以下事项:

  1. 我的Caps Lock开了吗?
  2. 我的Num Lock开了吗?
  3. 当您输入密码时,这些东西是否在安装过程中已打开。

如果这些都不起作用,您可以尝试再次启动进入恢复模式。这是关于如何使用此方法来解决您的问题的很好的解释。

祝你好运


归档时间:

查看次数:

28801 次

最近记录:

8 年,8 月 前