Chsh 企業ログイン

Chsh 企業ログイン

Fedora 34をインストールし、会社のログイン(ドメインユーザー)がありました。

chshユーザーが存在しないため、ユーザーのデフォルトシェルをzshに変更することはできません。 (/etc/passwdローカルユーザーではないため存在しません)

/etc/passwd追加するユーザー文字列を取得しようとしましたが、文字列にシンボルがgetent passwd $USERあり、ログインが中断されるため機能しません。@

どんなアイデアがありますか?

答え1

ユーザーがサーバーに参加しているActive Directoryにいる場合、ユーザーにデフォルトのシェルを直接割り当てることはできません。適切なコマンドを使用してサーバーでこれを変更または上書きしようとすることができますが、これはすべてのユーザーに影響します。統合にSSSDを使用している場合は、Fedoraシステムで/etc/sssd/sssd.confを編集して追加できます。

[domain/YOUR_DOMAIN]
override_shell = /bin/zsh

ドメインが配置されているサーバーで常に変更することをお勧めします。これにより、今後多くの問題が解決します。

答え2

ユーザーのパスワードを変更するには、サーバーに指示する必要があります。私が知る限り、LDAP / ADの場合、chshコマンドはこれを行う方法がわからないので、次のように呼び出す必要があります。個別包装注文するchsh.ldap

これにより、このネットワークアカウントを使用するすべてのシステムのシェルが変更されます。これは、zshがインストールされていない(または別の場所にインストールされている)システムにログインできないことを意味します。

/bin/sh別のログインシェルを選択する別の方法は、実際のログインシェル(どこにも存在する)を維持しながら~/.profile

# ~/.profile
if [ -x /bin/zsh ]; then
  export SHELL=/bin/zsh
  exec $SHELL
fi

関連情報