如何更改 Linux 登录 Shell
我是一个新的 Linux 用户,您能告诉我一个用于更改 Linux 或 UNIX 操作系统中默认登录 shell 的命令名称吗?
您不必编辑/etc/passwd文件来更改 shell。相反,请使用 chsh 命令。它会更改设置用户初始登录命令名称的用户登录 shell。普通用户只能更改其帐户的登录 shell。但是,超级用户(即 root 用户)可以更改任何帐户的登录 shell。
您不必编辑/etc/passwd文件来更改 shell。相反,请使用 chsh 命令。它会更改设置用户初始登录命令名称的用户登录 shell。普通用户只能更改其帐户的登录 shell。但是,超级用户(即 root 用户)可以更改任何帐户的登录 shell。
教程详细信息 | |
---|---|
难度等级 | 简单的 |
Root 权限 | 是的 |
要求 | Linux 终端 |
类别 | 用户管理 |
先决条件 | chsh 命令 |
操作系统兼容性 | Alma • Alpine • Arch • BSD • Debian • Fedora • Linux • macOS • Mint • openSUSE • Pop!_OS • RHEL • Rocky • Stream • SUSE • Ubuntu • Unix • WSL |
预计阅读时间 | 2 分钟 |
chsh 命令语法
以下是 chsh 命令的语法:
chsh -s {shell-name} {user-name}
其中,
- -s {shell-name}:指定您的登录 shell 名称。您可以从 /etc/shells 文件中获取可用 shell 的列表。
- User-name:这是可选的,如果您是根用户则很有用。
首先,使用 less 命令/ cat 命令/ more 命令找出可用的 shell 列表:
$ less /etc/shells
示例输出:
/bin/ash /bin/csh /bin/sh /usr/bin/es /bin/ksh /bin/tcsh /bin/sash /bin/zsh /bin/dash /usr/bin/screen /bin/bash /bin/rbash
示例:将 Linux 中的默认 shell 更改为 /bin/tcsh
要将您的 shell 名称更改为 /bin/tcsh,请键入以下命令并按 [Enter] 键:
$ chsh -s /bin/tcsh
示例输出:
Password:
当提示输入密码时,请输入您自己的密码。您必须注销并重新登录才能看到此更改。如果您只输入 chsh 命令,它将以交互方式提示输入 shell 名称:
$ chsh
示例输出:
Password: Changing the login shell for tv Enter the new value, or press ENTER for the default Login Shell [/bin/bash]:
此命令将永久更改默认登录 shell 为 /bin/tcsh。在此示例中,首先使用 type 命令或 command 命令找出 bash shell 的路径:
这是我看到的:
$ type -s bash
$ which bash
bash is /usr/local/bin/bash
现在使用以下命令为名为 vivek 的用户将 shell 设置为 bash:
$ chsh -s /usr/local/bin/bash vivek
或者,如果您知道 sysadmin 级别访问权限,那么:
$ sudo chsh -s /usr/local/bin/bash vivek
更改 Linux 登录 Shell 帮助
使用以下命令通过 help 命令或 man 命令获取有关 chsh 命令的帮助:
$ man chsh
$ chsh --help
总结
现在就这些了。我希望这个小教程能帮助你改变你的 shell。如果你需要帮助,请在下面发表评论或只是发表你的感谢信。