新しいCentOSサーバーがあります。
サーバーuname
情報は次のとおりです。
[root@server ~]# uname -vr
3.10.0-862.14.4.el7.x86_64 #1 SMP Wed Sep 26 15:12:11 UTC 2018
[root@server ~]#
su
このコマンドを使用してユーザーを変更しようとすると、コマンドを実行した後に何も起こりません。
[root@server ~]# su ks1
[root@server ~]#
私のユーザーを追加しましたが、wheel
結果には影響しませんでした!
コメントで述べたように
[root@server ~]# getent passwd ks1
ks1:x:1004:1006::/home/ks1:/bin/false
何が問題なのか知っていますか?
答え1
s
サービスを他のユーザーに移行するには、u
シェルが必要です。シェルはsu
次の順序で指定されます。
- --shellで指定されたシェル
- --preserve-environment オプションを使用する場合、シェルは環境変数 SHELL に指定されます。
- ターゲットユーザーのpasswdエントリにリストされているシェル
- /bin/sh
--shell
または、オプションが指定されておらず、--preserve-environment
ユーザーがシェルを一覧表示したため、そのシェルが実行され、su
シェルがすぐにシャットダウンされました。
代わりに、ユーザーに有効なシェルを設定してみてください--shell
。
su --shell /bin/bash ks1
# or
chsh -s /bin/bash ks1
su ks1