在 Debian 中“替换默认外壳(shell)”通常指把某个用户的 登录 shell 从 /bin/bash 改成其他 shell(如 zsh、fish 等)。下面按常见场景说明。
查看系统可用 shell:
cat /etc/shells
如果要使用的 shell 不在列表中,先安装,例如:
sudo apt update
sudo apt install zsh
安装后通常会自动加入 /etc/shells。
chsh -s /bin/zsh
需要重新登录生效。
查看当前 shell:
echo $SHELL
sudo vipw
找到你的用户行,把最后的 /bin/bash 改成 /bin/zsh。
⚠️ 改错可能导致无法登录。
sudo chsh -s /bin/zsh root
或:
sudo chsh -s /bin/zsh
(在 root 权限下)
sudo chsh -s /bin/fish username
编辑:
sudo nano /etc/default/useradd
修改:
SHELL=/bin/zsh
新建用户时会使用此 shell。
/bin/bash/bin/zsh/usr/bin/fish/bin/sh重新登录后:
echo $SHELL
或:
ps -p $$
如果你是想 替换系统 init shell / 恢复误改导致无法登录,可以告诉我具体场景,我可以给你更安全的方案。