web-dev-qa-db-ja.com

ユーザーがMySQLデータベースに保存されている場合、passwdを使用してUNIXユーザーのパスワードを変更するにはどうすればよいですか?

libnss-mysqllibpam-mysqlを設定しようとしています。これまでのところ、すべてが機能しています。 idを使用して、データベースに保存されているユーザーに関する情報を取得できます。 getent passwdも機能しています。ただし、getent shadowはそうではありません。また、passwdを使用してデータベースに保存されているユーザーのパスワードを変更することはできません。これらの問題を修正する方法はありますか?

ところで、私はUbuntu10.04を最小限の仮想マシンとして実行しています。

更新

私が変更した構成ファイルは、/etc/nss-mysql.conf/etc/nss-mysql-root.conf、および/etc/nsswitch.confのみでした。前の2つは正しいと確信しています。データベースへのアクセス方法を構成するだけなので。後者の次の3行に「mysql」という単語を追加しただけです。

passwd: compat mysql
groups: compat mysql
shadow: compat mysql

他の構成ファイルには触れませんでした。他のファイルを表示する必要がある場合は、お知らせください。現時点では、他のどの構成ファイルに関心があるのか​​わかりません。

2
t6d

通常は、 getent shadowあなたがrootでない限り、何も返しません。

Mysql PAMモジュールを使用するには、/ etc /pam.dのPAM構成を変更する必要があります。

その後、通常のpasswdコマンドでパスワードを変更できるようになります。

1
Mark Wagner