Ubuntu 22在你遇到"PAM unable to dlopen(pam_tally2.so)"这个错误时,主要是因为Ubuntu 22版本已经不再支持pam_tally2模块。这个模块主要用于追踪并限制用户尝试登录的失败次数,但在新版本的Ubuntu中,已经被pam_faillock模块所替代。
你可以通过以下步骤来解决这个问题:
首先,你需要确认你的系统中是否还存在pam_tally2.so这个文件。你可以通过命令 find / -name pam_tally2.so
来查找。如果找到了,那么你可能在某些地方仍然在调用这个过时的模块,你需要找到并删除这些引用。
其次,你需要转向使用pam_faillock模块。你可以通过编辑/etc/pam.d/common-auth文件来实现。在该文件中,找到含有pam_tally2的行并注释掉(在行首加上#)。然后在文件的顶部添加以下行:
auth required pam_faillock.so preauth silent audit deny=5 unlock_time=900
auth [success=1 default=bad] pam_unix.so
auth [default=die] pam_faillock.so authfail audit deny=5 unlock_time=900
auth sufficient pam_faillock.so authsucc audit deny=5 unlock_time=900
auth required pam_deny.so
这些行的含义是,如果一个用户连续5次尝试登录失败,那么系统将锁定该用户15分钟(900秒)。
最后,你需要重启你的系统来使这些更改生效。
这个问题的关键在于,Ubuntu 22已经不再支持pam_tally2模块,而是转向使用pam_faillock模块。因此,当你遇到"PAM unable to dlopen(pam_tally2.so)"这个错误时,你需要做的就是删除对pam_tally2的引用,并转向使用pam_faillock模块。
总的来说,解决这个问题的步骤是:确认你的系统中是否还存在pam_tally2.so文件,如果存在,则删除对它的引用;然后编辑/etc/pam.d/common-auth文件,注释掉含有pam_tally2的行,并添加使用pam_faillock的行;最后重启你的系统。
希望这个解答能帮助你解决问题。如果你还有其他问题,欢迎随时提问。
海外免备案云服务器链接:www.tsyvps.com
蓝易云香港五网CN2 GIA/GT精品网络服务器。拒绝绕路,拒绝不稳定。