首页 » Linux » CentOS » yum/rpm error: Failed to initialize NSS library centos7

yum/rpm error: Failed to initialize NSS library centos7

 

今天在一台测试机上使用yum命令安装包时,出现error: Failed to initialize NSS library错误,rpm命令也同样如此,但是系统还可以正常使用。

完整报错内容如下:

发生这种情况的原因可能是仅升级了个别的nss-softokn-freebl包组,没有同时升级nss或nspr等,也有可能是rpm指定卸载了某个包组导致异常。

网上的方法无非是rpm2cpio提取库,但是如果你不知道是由于什么操作导致的,解决起来也会比较麻烦,所以rpm2cpio要提取多个软件包组,并不能指定一个。

包组可通过https://centos.pkgs.org/查找并下载到本地,进行提取

此时再次执行rpm/yum命令,如果依旧报错,则继续提取相关库

确保库已经成功覆盖至/usr/lib64/

如果到此,问题还是依旧,我建议你执行strace rpm,查看调用了哪些/lib64/下的库,然后进行提取覆盖

如果当然系统没有strace命令,可以通过rpm2cpio提取的方法,将bin文件提取出来,扔到系统bin目录下
思路就是如此,可以参考以上思路进行排查。

如果在cp覆盖的时候提示cannot access /lib64/libsoftokn3.so: No data available内容,建议通过rsync重新拷贝/lib64目录至/lib64.bak,将异常的文件过滤掉,然后将/lib64.bak与/lib64名称互换。

最后,不管你用什么办法,建议将系统提前做好备份,避免某些操作导致异常。

原文链接:yum/rpm error: Failed to initialize NSS library centos7,转载请注明来源!

0