2023/10/24 (火)

二十四節気の霜降(そうこう)になり、七十二候はその初候の霜始降(しもはじめてふる)。

むっかし先輩に「風炉の中置は霜柱が立ちはじめたら」なんて伺いましたけど、いまはそんなことではまだずっとできない。。。
教室としてはカリキュラム上、むりやりでも10月で中置、11月で開炉とせねばならぬところであります。

2023-10-24:su: PAM unable to resolve symbol: pam_sm_acct_mgmt

仲間から「アップデート掛けたら su ができなくなったマシンがあるんでみてほしい」とへぷる要望あり。

一般ユーザーでログインして、そこで sudo コマンドは効く。
のだけど、たとえば sudo su – とかしようとすると、できなくて、/var/log/secure には

Oct 24 08:12:34 devmachine su: PAM unable to resolve symbol: pam_sm_acct_mgmt

というログが出る。
pam_sm_acct_mgmt は /usr/lib64/security/pam_unix.so のなかにあり、なんというか、こいつが解決できないってどういうこと?という。。。
ちなみにマシンは CentOS Linux release 7.9.2009 (Core)
CentOS 7 なんてヤメレ、という意見もあろうけど、現用系とのことでしょうがない。

いろいろググってみるも、pam RPM のバージョンを変えて入れてみろとかあまり役に立つものなし。
そういえば、別で CentOS 7 のマシンあったな、と思い出したのでログインして確認してみる。
そっちの CentOS7 は、長らく yum update してないものの、redhat-release ファイルは同じく CentOS Linux release 7.9.2009 (Core)

で、こっちでは sudo su – に成功する。おお!
入ってる pam RPM のバージョンは同じ、pam_unix.so の sha1sum も同じ。

んー、じゃあ、pam の設定ファイルか?、と /etc/pam.d/su を見てみる。
すると、できるマシンとできないマシンで差分があることを発見。
出来ない方では冒頭に

# Added by Google Compute Engine OS Login.
account    [success=bad ignore=ignore] pam_oslogin_login.so

というのがいる。
どうも、この子(pam_oslogin_login.so)がアレらしい。

乱暴だけど、この account 行をコメントに。
したら su ができるようになった。

ちなみに、もともとできたマシンの方には pam_oslogin_login.so がいない。オンプレマシンでした。
できなくなった子は Google Cloud なマシンだったそうで。
とりあえず、su ができるようになったと喜んでいたので、僕はこれ以上は手を出さず^^;

github にレポジトリあって、ここに issue 報告したらいいのかもだけど、CentOS7 の話をするのも、ねぇ。

comment