24小时热门版块排行榜    

查看: 417  |  回复: 6
当前主题已经存档。
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

hzfish

金虫 (正式写手)

[交流] 【求助】改变用户默认SHELL的问题!

熟悉linux的老虫们,我的系统安装是时用的BASH SHELL,我增加了几个用户,并他们的默认SHELL改为CSHELL,改变后在用户的主目录下看不到CSHELL的配置文件。这是怎么回事??如何修改才能既改变了用户的SHELL,又能在用户的主目录下看到新SHELL的配置文件。
谢谢
1

[ Last edited by wuli8 on 2009-11-28 at 09:38 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hzfish

金虫 (正式写手)


dongdong3881(金币+1,VIP+0):鼓励交流 11-19 21:51
增加用户时做了以下工作:
[root@chem202 ~]# chsh -list
/bin/sh
/bin/bash
/sbin/nologin
/bin/tcsh
/bin/csh
/bin/ksh
/bin/zsh
说明我的系统安装了以上shell
[root@chem202 ~]# adduser -s /bin/csh gs
[root@chem202 ~]# passwd
Changing password for user root.
New UNIX password:
BAD PASSWORD: it is WAY too short
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
增加新用户,其默认登录shell为csh
[root@chem202 ~]# more /etc/passwd |grep gs
gs:x:501:501::/home/gs:/bin/csh
说明新增用户的shell为csh
[root@chem202 gs]# ls -a /home/gs
.  ..  .bash_logout  .bash_profile  .bashrc  .zshrc
但是gs的主目录下没有csh的配置文件.

应该如何操作才能让csh配置文件出现在用户主目录中呢???

另外一个用户是不是可以用几种Shell呢,想用哪上shell时就直接切换到哪个shell.

谢谢!
4楼2009-11-18 11:04:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 7 个回答

abbott

金虫 (著名写手)

不要用QQ问我东西

★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
mingdong(金币+2,VIP+0):感谢交流! 11-18 13:28
这个东西不是看的!
确认你的系统安装有csh
确认你添加用户的指令:
或者你添加用户就是简单的useradd tom
那么到/etc/passwd更改指定的shell
让用户这样些自己的初始配置文件:
vi ~/.profile
OR
vi ~/.login
Chemistry[]==[]Chem[]is[]try!!!
2楼2009-11-18 08:33:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tjyl

金虫 (正式写手)


mingdong(金币+1,VIP+0):感谢交流! 11-18 14:06
想换就直接输入bash
没有其他特殊要求,目前为止bash是比较好的选择。
引用回帖:
Originally posted by hzfish at 2009-11-18 11:04:
增加用户时做了以下工作:
[root@chem202 ~]# chsh -list
/bin/sh
/bin/bash
/sbin/nologin
/bin/tcsh
/bin/csh
/bin/ksh
/bin/zsh
说明我的系统安装了以上shell
[root@chem202 ~]# adduser -s /bin/csh ...

5楼2009-11-18 13:46:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

delimy

★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
mingdong(金币+3,VIP+0):感谢交流! 11-21 09:46
man adduser
man chsh

简单解说一下:useradd的默认设置在/etc/login.def和/etc/default/useradd里。useradd -D -s /bin/tcsh 把新用户shell默认用tcsh
改shell应该用chsh而不是直接改passwd。
新用户的home就是从/etc/skel/复制过来的。把你需要的任何文件放到/etc/skel/里,创建用户会复制。
换shell比如bash:bash -l 得到login shell,直接bash的话只是一般的interactive shell,行为会有不同。详见man bash。其他shell请参考手册页。
另:提问前读手册页是好习惯。
6楼2009-11-21 00:23:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见