免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3153 | 回复: 8
打印 上一主题 下一主题

[FreeBSD] 如何修改用户的Shell? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-04-05 17:54 |只看该作者 |倒序浏览
我装了bash,于是想把一个用户的Shell从/bin/sh改成/usr/local/bin/bash,
在/etc/passwd和/etc/master.passwd文件里都改了,没用,登录还是sh模式,
我少做了什么吗?要如何做呢?
谢谢!!

论坛徽章:
0
2 [报告]
发表于 2009-04-05 18:04 |只看该作者
应该是没有生效吧,试试chpass USERNAME,改改shell,退出重新登陆。自己最好不要改/etc/passwd和/etc/master.passwd吧。

论坛徽章:
0
3 [报告]
发表于 2009-04-05 18:25 |只看该作者
我把/etc/master.passwd和/etc/passwd文件中该用户的sh又都改回了/bin/sh
然后执行 chpass -s /usr/local/bin/bash UserName ,这样修改起效,该用户的shell是变成了bash
但是查看/etc/master.passwd和/etc/passwd文件,里面写的仍然是/bin/sh,这是怎么回事?
是不是有一个用户自己的配置文件在起作用??
谢谢!

论坛徽章:
0
4 [报告]
发表于 2009-04-05 18:33 |只看该作者
哈,我好像知道了
FreeBSD不去读/etc/master.passwd和/etc/passwd,读的是/etc/pwd.db和/etc/spwd.db,所以只读/etc/master.passwd和/etc/passwd是没有用的,还要执行pwd_mkdb命令

论坛徽章:
0
5 [报告]
发表于 2009-04-05 18:36 |只看该作者
用 chsh 或者 chpass -s !
你自己修改 passwd 文件干什么,好好的现成的工具不去用?

论坛徽章:
0
6 [报告]
发表于 2009-04-05 18:37 |只看该作者
使用vipw命令来修改master.passwd文件,保存退出后会自动更新spwd.db

[ 本帖最后由 linuxkumao 于 2009-4-5 18:40 编辑 ]

论坛徽章:
0
7 [报告]
发表于 2009-04-05 18:39 |只看该作者
原帖由 langue 于 2009-4-5 18:36 发表
用 chsh 或者 chpass -s !
你自己修改 passwd 文件干什么,好好的现成的工具不去用?


因为我不知道,现在知道了

论坛徽章:
0
8 [报告]
发表于 2009-04-05 18:48 |只看该作者

回复 #4 linuxkumao 的帖子

正确!

论坛徽章:
0
9 [报告]
发表于 2009-04-05 20:31 |只看该作者
fb必须用vipw, 因为fb是对passwd文件建立二进制数据库的, 直接编辑那个文本没用
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP