名前

chsh - ユーザーのログインシェルを変更する

書式

chsh [-s shell] [-l] [-h] [-v] [username]

説明

chsh の用途は、 ユーザーのログインシェルを変更することである。 コマンドラインでシェルを指定しないと、 chsh は、 プロンプトを出して、 シェルを何にするかとたずねてくる。

chsh は、libuser ライブラリとリンクしていれば、 ユーザーアカウント情報がローカルにない場合 (kerberos や LDAP などを使用している場合) にも対応する。 リンクしていない場合は、 ypchsh(1) や lchsh(1) のような、 非ローカルなアカウント情報に対応している chsh の実装を使用すればよい。

オプション

-s, --shell shell

ログインシェルを指定する。

-l, --list-shells

/etc/shells に登録されているシェルのリストを表示して、 終了する。

-h, --help

ヘルプを表示して終了する。

-V, --version

バージョンを表示して終了する。

有効なシェル

chsh は、システム上のどんな実行ファイルのフルパス名でも受け入れる。

もっと詳しく言うと、 デフォルトの動作では、root 以外のユーザーに対しては /etc/shells ファイルに登録されているシェルしか受け入れないようになっている。 ただし、root ユーザーが /etc/shells にない実行ファイルを指定した場合には、 それを受け入れて、 /etc/shells に登録されていない旨の警告を出す。 なお、 コンパイル時の設定で、 どんなユーザーに対しても警告を出すだけにすることもできる。

終了ステータス

操作に成功すれば 0 を返し、 操作に失敗したり、 コマンドの書式が無効なときは、1 を返す。

作者

関連項目

login(1), login.defs(5), passwd(5), shells(5)

バグ報告

バグ報告は、 以下にある issue トラッカーを利用すること。 <https://github.com/util-linux/util-linux/issues>.

入手方法

chsh コマンドは util-linux パッケージの一部であり、 以下からダウンロードできる。 Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.