修改Linux默认Shell⽤chsh-sbinzsh命令不⽣效,提⽰chsh:
Shell。。。
我想现在应该有很多⼈都已经使⽤zsh作为默认的Shell了,尤其是搭配 oh-my-zsh 之后,真是好⽤得飞起。
⼀般,我们在切换系统默认的Shell的时候,都会使⽤chsh -s /bin/zsh命令来进⾏修改。今天我遇到⼀个问题,在某台⽼服务器上,使⽤这个命令⽆法修改,具体原因未知。始终提⽰——chsh: Shell not changed.
⽆奈,只能更换另外的切换⽅式了,改⽤usermod -s /bin/zsh fungleo这个命令来进⾏的修改,成功了。这个命令⾥⾯的fungleo是我的系统⽤户名,如果看官在执⾏这条命令的时候,切记换成⾃⼰的⽤户名。⽤这个命令的缺点是,只能更改单个⽤户的,不能修改所有⽤户的。不过⼀般来说,⽤户也不会太多,所以是够⽤的。
有点⼩坑,记录⼀下。
linux执行shell命令今天遇到在 windows 下的⼦ linux 系统中切换 zsh 不成功,到的解决⽅法是在 .bashrc ⽂件中添加如下代码
if [ -t 1 ]; then
exec zsh
fi
即可在启动时是默认的 zsh 终端了。神奇的windows。。。
2020年05⽉14⽇补充
今天试了⼀下 centos 8 发现,在系统中没有⾃带chsh命令⼯具,提⽰chsh: command not found。简单查了⼀下,是因为系统没有⾃带util-linux-user⼯具包导致的。
那么原因到了,解决就很简单了,只要安装它就可以了。我们可以使⽤yum包管理⼯具进⾏安装。
yum install util-linux-user
如果yum没有到这个包(我是安装了扩展源的,我不清楚这个包是在扩展源还是在原有的源⾥就有。)可以使⽤dnf包管理⼯具来进⾏安装。命令⼀致:
dnf install util-linux-user
dnf是取代yum的包管理器,两者的使⽤基本是⼀致的。两者的关系可以看这篇⽂章或者搜索dnf yum来
相关资料。