Ubuntu无法输入密码:sudo操作无密码输入机会却触发多次错误提示
Ubuntu无法输入密码:sudo操作无密码输入机会却触发多次错误提示
这种情况真的挺让人头疼的——明明连输密码的机会都没给,直接就弹出错误提示,最后还锁定sudo操作。结合我碰到过的类似案例,大概率是这几个原因,你可以一步步排查:
PAM认证配置出问题了
系统里负责sudo认证的PAM模块配置文件(/etc/pam.d/sudo)可能被误改了,比如不小心删掉了关键的认证规则行。解决的话得进单用户模式修复:- 重启电脑,在GRUB启动菜单选「Ubuntu高级选项」,再选带recovery mode的项;
- 进入 recovery 菜单后选「root」,进入根shell;
- 先把根目录挂载成可写模式:
mount -o remount,rw /; - 编辑sudo的PAM配置文件:
nano /etc/pam.d/sudo,确保里面有@include common-auth这一行,没有的话加上,然后按Ctrl+O保存,Ctrl+X退出; - 重启电脑试试。
sudoers权限配置错误
如果/etc/sudoers文件里的规则写错了,比如给你的账户设置了错误的权限,或者不小心加了限制密码输入的规则,也会出现这种情况。同样进单用户模式:- 按上面的步骤进入root shell并挂载可写根目录;
- 用专门的编辑工具打开sudoers文件:
visudo(这个工具会自动检查语法错误,避免改错导致更大问题); - 检查有没有你的账户权限行,比如
你的用户名 ALL=(ALL:ALL) ALL,确保没有被注释掉,也没有奇怪的NOPASSWD或者其他限制规则; - 保存退出后重启。
账户被锁定或密码过期
说不定之前你不小心多次输错密码,导致账户被自动锁定了,或者密码已经过期。解决方法:- 进入单用户模式的root shell;
- 重置你的账户密码:
passwd 你的用户名,按提示输入新密码; - 如果是账户锁定的问题,执行
pam_tally2 --reset --user 你的用户名来解锁; - 重启后再试sudo。
终端环境变量异常
有时候终端的环境变量被破坏,导致sudo没法正常读取你的输入。这种情况可以先在单用户模式里试试重置环境变量:- 进入root shell后,执行
export TERM=xterm; - 然后试试
sudo -u 你的用户名 whoami,看能不能正常提示输入密码; - 如果可以的话,重启系统应该就没问题了。
- 进入root shell后,执行
备注:内容来源于stack exchange,提问作者BuenoVista419
相关产品推荐
相关产品推荐

