- 1. chsh シェルの変更
- 2. FreeBSD での動作
- 3. CentOS での動作
1. chsh シェルの変更
作業中ユーザのログイン時のシェルを変更します。
chsh
実際、以下で、シェルを変更するのですが、どのシェルか使えるかがわからないときがあります。
ディストリビューションによって、シェルのあるディレクトリが、「/bin」のこともありますし、「/usr/bin」のこともありますからね。
「Manjaro 21.1 GNOME」が「zsh」で、何へ変更できるかわからく手、打ち間違えたら
chsh: "/usr/bin/hogehoge" は /etc/shells の一覧内にありません。
chsh -l を実行すると、一覧を表示することができます。
と、表示されました。
「Linux」少なくとも「Manjaro」は「chsh -l」というオプションで、一覧表示できます。
(残念ながら、「FreeBSD」には、このオプションはありません)
「Manjaro 21.1 GNOME」で一覧表示しましたら、こんななりました。
$ chsh -l
/bin/sh
/bin/bash
/bin/zsh
/usr/bin/zsh
/usr/bin/git-shell
2. FreeBSD での動作
実行すると、vi エディタが起動されます。
つまり vi を使えない人はこのコマンドを使用してはいけません。
#Changing user information for ユーザ名.
Shell: /bin/tcsh ← ここに使用したいシェルをフルパスで記述します
Full Name:
Office Location:
Office Phone:
Home Phone:
Other information:
vi ですから中止するには :q!Enter、変更して書き込むには :xEnter を入力します。
変更した内容は
/etc/passwd
に保存されます。
反映するにはいったんログアウトしてログインしなおします。
同様なユーザデータベースを変更するコマンドが chpass、chfn、ypchpass、ypchfn、ypchsh とあり、それぞれ変更する内容が異なります。
3. CentOS での動作
CentOS でしかやってみていないので、他の Linux で、どう動作するのかは未確認です。
CenOS では、パスワードの入力を求められ、変更するシェルをフルパスで入力するだけです。
$ chsh
hogehoge のシェルを変更します。
パスワード: ← パスワードを入力して Enter
新しいシェル [/bin/csh]: ← シェルをフルパスで入力して Enter
|
    |