技巧分享:使用chsh更改Linux中默认Shell
共 1948字,需浏览 4分钟
· 2021-01-04
作者:Linux迷
链接:https://www.linuxmi.com/chsh-linux-shell.html
首先,找出Linux机器上可用的shell,即运行cat /etc/shells
输入chsh并按Enter键
您需要输入新的shell完整路径。例如,/bin/ksh
登录并注销,以验证您的Shell在Linux操作系统上是否正确更改。
让我们详细查看所有命令。
列出Linux中的Shell
在/etc/shells文件中运行以下cat命令:
linuxmi@linuxmi:~/www.linuxmi.com$ cat /etc/shells
当然,我们可以使用grep命令/egrep命令来确定是否安装了诸如zsh或fish这样的特定shell,请运行:
linuxmi@linuxmi:~/www.linuxmi.com$ grep "zsh" /etc/shells
/bin/zsh
/usr/bin/zsh
linuxmi@linuxmi:~/www.linuxmi.com$ grep "fish" /etc/shells
/usr/bin/fish
找出您当前的Shell名称
执行以下任一命令以查找当前的shell实例:
linuxmi@linuxmi:~/www.linuxmi.com$ ps -p $$
PID TTY TIME CMD
11711 pts/1 00:00:00 bash
linuxmi@linuxmi:~/www.linuxmi.com$ printf "My current shell - %s\n" "$SHELL"
My current shell - /bin/bash
linuxmi@linuxmi:~/www.linuxmi.com$ grep "^${USER}" /etc/passwd
linuxmi:x:1000:1000:linuxmi,,,:/home/linuxmi:/bin/bash
将默认shell从bash更改为zsh
要使用chsh将shell更改为zsh,请运行:
linuxmi@linuxmi:~/www.linuxmi.com$ type -a zsh ##找到zsh的路径 ##
linuxmi@linuxmi:~/www.linuxmi.com$ chsh -s /bin/zksh ## 将bash更改为zsh ##
验证一下:
linuxmi@linuxmi:~/www.linuxmi.com$ grep "^${USER}" /etc/passwd
注销并再次登录。可以关闭终端应用程序并重新打开它,或使用su命令,如下所示”
linuxmi@linuxmi:~/www.linuxmi.com$ su - linuxmi
用chsh将您的shell重新变成bash
是否要撤消更改?尝试:
type -a bash
chsh -s /bin/bash
## 用实际的用户名替换linuxmi##
grep '^linuxmi' /etc/passwd
su - linuxmi
获得有关chsh命令的帮助
在CLI上键入以下命令之一:
man chsh
或者:
chsh --help
选项如下:
-h:显示帮助消息并退出。
-R CHROOT_DIR:在CHROOT_DIR目录中应用更改,并使用CHROOT_DIR目录中的配置文件。
-s /path/to/SHELL:用户新登录shell的名称。将此字段设置为空白会导致系统选择默认的登录shell。
总结
通过本文,您了解了如何使用chsh命令更改默认Shell。有关更多信息,请参见shadow-utils主页。
推荐阅读:
记住看小电影前一定要检查一下域名是不是 HTTPS 的,不然……
5T技术资源大放送!包括但不限于:C/C++,Linux,Python,Java,PHP,人工智能,单片机,树莓派,等等。在公众号内回复「1024」,即可免费获取!!