chsh: PAM: Authentication failure

本文记录了一次在Ubuntu系统中因尝试更改默认Shell而引发的root账户登录问题及解决方案。作者通过chsh命令试图将Quartus7.2所需的默认Shell从bash更改为csh时遇到困难,最终发现问题是由于/etc/passwd文件被意外修改导致。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 为了在ubuntu下安装quartus 7.2,使用chsh命令将默认shell修改为 csh,没有成功,返回no a valid shellcsh does not exist,表明csh未正确安装。

  • 当退出root账户后,发现无法登录root,出现如下报错:Cannot execute cd /bin/bash: No such file or directory

  • 对我这种root敢死队队员来说,无法登陆root账户简直是 “mdzz”,马上试了试sudo,顿时放松了,sudo还能用,电脑未死。

  • 马上就怀疑到了刚打的 chsh 命令上,毕竟错误提示找不着bash,应该是chsh修改bashcsh的时候没成功,又没把它做的修改还原,干活只干一半,真是“mdzz”。

  • 那就很自然的就想到再用一遍chsh换回bash吧。可是真要如此简单我还用写篇博文?那不是“mdzz”吗。

  • 使用sudo chsh修改root的默认shell,错误是这样的
    chsh: PAM: Authentication failure

  • 这就尴尬了,PAM是什么?还授权失败?简单粗暴,google it。

  • 不出所料,出问题的很多,解决方法都不管用,比如什么修改/etc/shells,看着挺有道理,其实并没有什么用。可是,在某个角落,我发现了/etc/passwd,这一看就是那种看上去不起眼,其实最有用的东西

  • 打开我的/etc/passwd一看,问题就在第一行,最后一个值就是cd /bin/bash。这不胡来吗,这就是指定默认登录bash的地方,有个cd 什么意思?chsh你怎么给我改的?

  • 然后,把cd和它后面的空格删了,也就是最后一个值为/bin/bash,问题解决

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值