我可以将我的用户帐户设置为没有密码吗?

Fli*_*imm 111 password users

如果我尝试通过打开“用户帐户”将密码更改为空,“更改”按钮将保持灰色:

如何将我的密码更改为空?我知道您可以将 Ubuntu 设置为自动登录,但我希望我的密码为空,我从不想输入密码来验证自己作为该用户的身份。

我知道这可能不是一个好主意是有原因的,但我想知道它是否可能。我正在使用 Ubuntu 12.10。

Fli*_*imm 186

使用 GUI 工具无法做到这一点,但可以使用终端。

  1. 首先,如果您的用户具有 sudo 权限,则必须启用其NOPASSWD选项。否则,sudo即使您没有密码,也会要求输入密码,并且不会接受空密码。

    为此,请打开 sudoers 配置文件sudo visudo,并将以下行添加到文件中,替换david为您的用户名:

    david ALL=(ALL) NOPASSWD:ALL
    
    Run Code Online (Sandbox Code Playgroud)

    关闭编辑器以应用更改,并在新终端中测试对 sudo 的影响。

  2. 通过运行以下命令删除用户的密码:

    sudo passwd -d `whoami`
    
    Run Code Online (Sandbox Code Playgroud)

如果系统提示您输入密码,只需输入 Enter 即可。我已经用 LightDM、锁屏、 测试了这个答案sudogksu它可以工作,但是还有一个步骤可以让它工作pkexec(感谢 muru)。

  • 通过 ssh 登录,这对我(Ubuntu 16.04)不起作用。它仍然要求输入密码,但不接受任何密码(空白或旧密码或 ssh 密钥的密码)。 (8认同)
  • 在 Debian 上,当我在命令 `passwd david -d` 后尝试使用空密码登录时,我收到消息“抱歉,不起作用,再试一次”。现在我也无法使用旧密码登录。 (3认同)
  • 现在我无法安装软件,因为它需要密码才能安装。 (3认同)
  • 任何新的 visudo 编辑(例如“nopasswd”)都应添加到末尾,以便其他设置不会覆盖该条目。 (2认同)

Mit*_*tch 17

警告:使用此方法删除密码后要小心,您将无法在 GUI 或终端中验证自己以证明您具有管理员权限(例如使用 Synaptic 安装应用程序,或sudo通过命令使用 -线)。这是因为错误 #1168749

仅当用户不是唯一的管理员用户时才执行此操作。

这已经在 Ubuntu 12.04 和 12.10 上测试过。

  1. 确保您单击解锁以完成以下任务:

    解锁截图

  2. 进入用户帐户,然后单击密码字段:

  3. 窗口打开后,单击“操作”右侧的向下箭头...

  4. 并将其更改为“无需密码登录”,然后单击“更改”:

  5. 或者,您还可以启用自动登录,如下所示:

    截屏

要在运行此过程后再次为用户提供密码,您不能使用 GUI(错误 #882255),您必须使用命令行:

  1. 以具有管理员权限的其他用户身份登录。(请记住,使用此方法,原始版本无法在没有密码的情况下以管理员权限运行。)

  2. 在终端中运行以下命令:

     sudo passwd <username>
    
    Run Code Online (Sandbox Code Playgroud)

同样,我必须警告您,一旦您删除密码,您将无法在 GUI 或终端中验证自己,例如使用 Synaptic 安装应用程序,或sudo在命令行上使用。


mik*_*art 8

我认为这样做是可能的,但是一旦您尝试安装更新或其他任何需要 sudo 的东西,就会给您带来麻烦;因为您需要一个具有 sudo 访问权限(和密码)的帐户才能安装。

您最好的选择似乎是:

  • 使用没有密码的来宾帐户。从而留下一个带有密码的默认帐户。
  • 在没有密码的帐户上苦苦挣扎? 强烈建议不要这样做: 添加一个新用户帐户(带密码),然后将其更改为空白。去做这个:
    1. 创建用户(通过 GUI 或 useradd 等)。然后,
    2. CTRL- ALT-T打开终端。下一个,
    3. gksu gedit nano -B /etc/shadow然后找到新用户并使用以下命令更改现有的密码哈希:U6aMy0wojraho-- 所以它看起来像:newuser:U6aMy0wojraho:13996:0:99999:7:::
  • 您问题的最佳解决方案: 选择自动登录您的帐户,这可能是您所追求的主要好处。 去做这个:

    1. CTRL- ALT- T(打开终端)。在终端中,输入:

      sudo gedit /etc/lightdm/lightdm.conf
      
      Run Code Online (Sandbox Code Playgroud)

      添加行:

      autologin-user=YOURUSERNAME
      autologin-user-timeout=0
      
      Run Code Online (Sandbox Code Playgroud)

      YOURUSERNAME系统上的实际用户名替换--。