首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当尝试更改默认shell时,/etc/passwd中不存在用户

当尝试更改默认shell时,/etc/passwd中不存在用户
EN

Ask Ubuntu用户
提问于 2013-09-20 23:01:01
回答 6查看 120.6K关注 0票数 50

我希望将默认的shell从tcsh更改为bash。所以我试了一下,事情就是这样的:

代码语言:javascript
复制
>sudo chsh userid
Changing the login shell for userid
Enter the new value, or press ENTER for the default
        Login Shell [/xhbin/tcsh]: /bin/bash
chsh: user 'userid' does not exist in /etc/passwd

事实上,我没有在/etc/passwd。我也不知道原因。

我能做什么?

EN

回答 6

Ask Ubuntu用户

回答已采纳

发布于 2014-01-14 17:33:21

我的计算机是使用分布式身份验证的网络的一部分,因此我的用户详细信息不会出现在本地/etc/passwd文件中(但是可以使用getent passwd userid看到)(谢谢@steeldriver)。在我的例子中,我不得不在核心机器上做一些工作。

票数 32
EN

Ask Ubuntu用户

发布于 2017-08-28 06:52:51

gnome-terminal有一个解决办法:

  1. 转到编辑→配置文件首选项→标题和命令。
  2. 检查运行自定义命令,而不是我的shell。
  3. 提供bash作为自定义命令(或fish或任何东西)。
票数 30
EN

Ask Ubuntu用户

发布于 2015-06-04 16:56:56

如果通过PAM或其他方式使用LDAP身份验证,则必须在LDAP服务器中找到答案。让我们以Microsoft为目标,在这种情况下,登录时您的域帐户不在/etc/passwd中,但是您可以通过getent passwd | grep user在AD中看到您的用户属性。

如果最后它显示您的外壳是/bin/csh,那是因为在AD中有一个属性。因此,如果您在AD上有管理员帐户,您可以自己修复它。否则,只需告诉admin启用Active目录用户和计算机的View选项卡中的预先特性>用户属性> UNIX属性。在那里,您可以将登录shell更改为/bin/bash

千万别忘了跑:

代码语言:javascript
复制
sudo /opt/pbis/bin/config LoginShellTemplate /bin/bash

资料来源:当尝试更改默认shell时,/etc/passwd中不存在用户.

票数 11
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/348134

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档