shells
ファイルには、システム上でのログインシェルを記述します。
各アプリケーションはこのファイルを参照して、シェルが適切であるかどうかを判別します。
各シェルの指定は1行で行い、そのシェルのパスを記述します。 パスはルートディレクトリ (/) を基準として記述します。
例えば一般ユーザーが自身のアカウントに対するログインシェルを chsh にしようとした場合、chsh が shells
ファイルを参照します。
シェルコマンド名が記述されていなければ、その一般ユーザーはシェルの変更ができません。
例えば GDM は /etc/shells
ファイルが参照できない時には対話インターフェースの設定が出来ません。 また
FTP デーモンなどは、このファイルに記述されていないシェルを用いてのユーザーアクセスを拒否するのが通常です。
こういったアプリケーションのためにこのファイルが必要となります。
cat > /etc/shells << "EOF"
# Begin /etc/shells
/bin/sh
/bin/bash
# End /etc/shells
EOF