🌞
Linux, pam common-* 大事
Linux, pam common-* 大事
2025-09-05
(1).結論
-
pam-auth-update --force
、たまに行うのを忘れるな- 今回は systemd にかわった時に何もしなかったのが原因
- まさか XDG の env、pam、systemd が絡んでいたとはね
(2).なにが起きた
-
XDG_SESSION_ID
がセットされない- 結果、幾つかのアプリが、session が無いぞと言い、動かぬ
- shellでセットしても無駄。X の display manager 下で全てが動くため。アプリもshellもその下。
(3).環境
- Ubuntu 24.04
- 元は、Debian の 5.0(Lenny)、6.0(Squeeze)あたり。あるとき Ubuntu 12.04 にした。以後 ubuntu で upgrade。
(4).詳細
前々から session 云々といわれ、動かないアプリがあった。
理由はさっぱりわからず。長期放置していた。困る事もなかったため。
ある時、パッケージを update していたら
pam-auth-update --force
をやってねというようなメッセージ。
え!まさかね!?・・・と考え、pam.d をみてみた。
pamは昔設定をちょこちょこいじっていたため、さわるのが嫌。
多くの upgrade を重ねても次の狀態。
2011-02-04 07:05 common-account
2011-02-04 07:04 common-auth
2011-02-04 07:05 common-password
2021-03-13 22:29 common-session
2011-02-04 07:06 common-session-noninteractive
これがわるかった。
Debian 1.3 ⇒ .... Debian 5.0(6.0?) ⇒ Ubuntu 12 ⇒ ....
の中で、
initd ⇒ upstart ⇒ systemd
と移る。
この過程で、
- systemd が幅をきかせ、login や X にまで影響していた
- pam.d 、XDG の env に影響
失敗
/etc/pam.d/
以下のファイルに手動で以下を追加。
pam_systemd.so
しかし、X display manager が立ち上がらなくなる。
X がすぐ落ちる⇒Xが上がる⇒落ちる⇒...loop....Oh no...
OK
手動は失敗したため、自動で /etc/pam.d/common-*
を作る
# pam-auth-update --force
全て解決。
- X display manager ちゃんと起動
- XDG_SESSION_ID もセット
(5).他
pam-auth-update --force
を忘れずに。
-
/etc/pam.d/common-*
は手動でいじらないこと -
apt upgrade
、apt-get dist-upgrade
後に行う - 今後インストールされる libpam* が増減するときも行う
うん。おぼえていたらやっておこう。
...多分忘れる...
systemd あらぬ事まで 幅きかせ
X、pamで いらぬトラブル
え、まさか! そんな時は systemd
以上
Discussion