解决passwd命令的“module is unknown”的错误
/******************************************************************
*本文首发于bbs.bluegem.org的linux区
*本人email:[email protected]
*如转载本文,请保留首发地和本人联络方式,以方便交流,谢谢!
******************************************************************/
背景:
还是那个Minilinux的项目。我以rh9为蓝本,从一穷二白开始一点点加东西,最后做到2
1m。但是执行passwd命令的时候系统报告“module is unknown”错误,我用ldd命令确
认了所有和passwd有关的动态库,但是还是报同样的错误。
解决过程:
我先用# ldd /usr/bin/passwd找到所有和passwd命令有关的动态库,并且cp到相关的系
统目录。还是有问题,我又考虑可能和ldconfig有关,我查看了ldconfig的配置文件/et
c/ldconfig.conf,只有与kerbro等有关的配置。
在google上查,老外说跟pam有关,什么ldopen有问题。但是没有人给出确切的答案。
后来问了个朋友,他也确定是和Pam有关,但是也说不准确且的原因。他推荐我用strace
跟踪一下,我就用# strace -o passwd.log passwd,把运行结果存到passwd.log里和正
常的系统里的passwd运行结果比对,发现缺个库/usr/lib/libcrack.so.3,加上在运行
,还是不行,在用同样的方法,发现缺少/usr/lib/crack_dict*。
至此,Passwd可以正常运行。
单位不能上bbs了,完全凭写的,hoho。
重要的不是如何解决问题,而是解决问题的思路。
本文地址:http://com.8s8s.com/it/it28987.htm