加载中…
个人资料
_src
_src
  • 博客等级:
  • 博客积分:0
  • 博客访问:2,065
  • 关注人气:30
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

PAM unable to dlopen(/lib/security/pam_cap.so)

(2014-08-28 16:38:21)
标签:

pam

dlopen

pam_cap.so

解决办法

libcap

分类: Ubuntu/Debian

PAM unable to dlopen / pam_cap.so

问题

系统版本:Debian 6.0.7 x86_64

错误信息:


PAM unable to dlopen(/lib/security/pam_cap.so): /lib/security/pam_cap.so: 
cannot open shared object file: No such file or directory
PAM adding faulty module: pam_cap.so

pam_cap.so这个库文件是由libcap2软件包提供,先确认软件版本。


dkpg -l | grep libcap2

ii  libcap2      1:2.24-4     POSIX 1003.1e capabilities (library)

根据https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=672940指出,这个问题

  • Found in version libcap2/1:2.22-1.1
  • Fixed in version libcap2/1:2.22-1.2

所以,需要先确定系统上libcap2版本要比1:2.22-1.2新。

注意

安装libcap2会影响到一些系统设置,比如insserv,设置自启动服务,贴上我的安装过程信息:


...
Preparing to replace libcap2 1:2.19-3 (using …/libcap2_1:2.24-4_amd64.deb) …
Unpacking replacement libcap2 …
Setting up libcap2 (1:2.24-4) …
Setting up python3 (3.4.1-1) …
running python rtupdate hooks for python3.4…
running python post-rtupdate hooks for python3.4…
Setting up lxc (1:1.0.5-1) …
Installing new version of config file /etc/init.d/lxc …
insserv: warning: script ‘my_server’ missing LSB tags and overrides
...

安装后,继续检测还有没报错:


tail -f /var/log/auth.log

发现,还是有继续报错,每分钟一次(crontab 调用相关),继续检查原因,因为pam_cap.so肯定是有装上的,在/lib目录里面翻来翻去,最后真找出来了。

解决办法

由于系统是64位版本,pam_cap.so文件安装位置与32位的有所不同,不是在/lib/security/pam_cap.so,而是/lib/x86_64-linux-gnu/security/pam_cap.so,重新做了个软连接过去就能解决问题:


ln /lib/x86_64-linux-gnu/security/pam_cap.so /lib/security/pam_cap.so

注意链接的源文件尽量使用绝对路径,否则可能会报错:Too many levels of symbolic links

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有