solaris + デフォルトのシェルを変更する

solaris + デフォルトのシェルを変更する

私はSolarisマシンを持っていますが、デフォルトではtcshがシェルです

たとえば、デフォルトのシェルを bash に変更する方法 - ログアウトして再度ログインすると、tcsh の代わりに bash が設定されます。

つまり、psコマンドでログアウトしてログインすると、tcshではなくbashが表示されます。

   my_solaris:/ ROOT > ps
   PID TTY         TIME CMD
   13950 pts/4       0:00 ps
   9951 pts/4       0:00 tcsh

答え1

usermod コマンドを使用して、アカウントに設定されているログイン シェルを変更できます。

usermod -s /usr/bin/bash diana

マシン上の bash シェルのパスを再確認してくださいwhich bash

usermod コマンドには root 権限が必要であることに注意してください。

答え2

execコマンドを使用すると、終了する現在のシェルの代わりにプログラムを実行できます。シェルをbashに変更するには、次のコマンドを使用します。

exec bash

シェルをbashに切り替えます

exec tcsh

再び元に戻します

編集:

質問を別の意味に変えたので、答えも変わります

これを行うにはルートアクセスが必要ですが、次のいずれかの方法で実行できます。

passwd -e diana 
Old Shell: /usr/bin/tcsh
New Shell: /usr/bin/bash
passwd: password information changed for diana

または

usermod -s /usr/bin/bash diana

答え3

Solaris 11(およびSolaris 10)の場合、rootとして以下を実行できます。

[root@server ~]# passwd -e other_user
Old shell: /usr/bin/bash
New shell: /usr/bin/ksh
passwd: password information changed for other_user
[root@server ~]# 

答え4

前述の内容に加えて、usermod -s /usr/bin/bash USERNAME次のようになります。

変更することもできますデフォルトシェル用新規アカウントuseradd -D を使用する

ユーザー追加 -D -s /usr/bin/bash

参照:http://docs.oracle.com/cd/E19963-01/html/821-1462/useradd-1m.html

関連情報