# Linux 修改默认 Shell 本文以将 bash 修改为 fish 为例进行说明。 ## 确认 /etc/shells 文件 首先查看 fish 是否在 /etc/shells 中: ```sh # /etc/shells: valid login shells /bin/sh /bin/bash /bin/rbash /bin/dash /usr/bin/tmux /usr/bin/fish ``` 这个文件说明了有效的登陆 shell。特别注意,有的 shell 路径在 /bin 下,有的在 /usr/bin 下。很多 shell 同时在这两个目录下都存在,但是在 /etc/shells 中只添加了其中一个路径,那么在接下来的操作中只能使用那个已经添加到 /etc/shells 中的这个路径。 ## 修改 /etc/passwd 文件 该文件描述了用户的 home 目录和默认 shell,格式如下: ```sh username:x:1001:1001:groupname,,,:/home/username:/bin/bash ``` 将 /bin/bash 修改为 /etc/shells 中的 /usr/bin/fish 即可。