Centos7 error: Failed to initialize NSS library

27 篇文章 0 订阅

安装oracle相关连的包时导致yum和rpm都坏了,命令使用不了,出现如下错误提示:

error: Failed to initialize NSS library

There was a problem importing one of the Python modules

required to run yum. The error leading to this problem was:

 

   cannot import name ts

 

Please install a package which provides this module, or

verify that the module is installed correctly.

 

It's possible that the above module doesn't match the

current version of Python, which is:

2.7.5 (default, Aug  2 2016, 04:20:16)

[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)]


个人尝试源码编译重装nss、gcc、python、yum都不管用,就差重装系统了。

最后解决方案:

1、下载nspr(nspr-4.13.1-1.0.el7_3.x86_64.rpm)包,链接:http://mirror.centos.org/centos/7/os/x86_64/Packages/nspr-4.13.1-1.0.el7_3.x86_64.rpm

2、执行命令:rpm2cpio nspr-4.13.1-1.0.el7_3.x86_64.rpm | cpio -idmv

3、执行命令:LD_PRELOAD=./usr/lib64/libnspr4.so yum update nspr

问题解决。

注意: 避免安装相关的glibc.i686包,否则会导致yum、rpm损坏


如果还报错,可以将export LD_PRELOAD=/usr/lib64/libnspr4.so写入/etc/profile,然后再source /etc/profile

rpm2cpio命令:将rpm格式的文件转为cpio格式的文件。rpm是linux中常用的文件格式,方便了用户的安装,但没有cpio格式灵活,最典型的例子就是安装一个在rpm中.so文件时,如果直接使用rpm安装,那么需要处理复杂的依赖关系,将rpm转为cpio,则可以方便地提取.so文件,做过软连接。

比如:

rpm2cpio ../libstdc++-4.3.0-8.i386.rpm | cpio -idv

LD_PRELOAD是Linux系统的一个环境变量,它可以影响程序的运行时的链接(Runtime linker),它允许你定义在程序运行前优先加载的动态链接库。这个功能主要就是用来有选择性的载入不同动态链接库中的相同函数。通过这个环境变量,我们可以在主程序和其动态链接库的中间加载别的动态链接库,甚至覆盖正常的函数库。一方面,我们可以以此功能来使用自己的或是更好的函数(无需别人的源码),而另一方面,我们也可以以向别人的程序注入程序,从而达到特定的目的。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
回答: "error: Failed to initialize NSS library"错误通常是由于缺少或损坏的NSS库引起的。NSS库是用于支持网络安全服务的库。要解决这个问题,您可以尝试以下几个步骤: 1. 检查NSS库是否已正确安装。您可以使用命令"rpm -qa | grep nss"来检查是否已安装NSS库。如果没有安装,您可以使用"yum install nss"命令来安装它。 2. 如果NSS库已安装,但仍然出现错误,请尝试重新安装NSS库。您可以使用命令"yum reinstall nss"来重新安装NSS库。 3. 如果重新安装NSS库仍然无法解决问题,您可以尝试使用"yum clean all"命令清除Yum缓存,并重新运行"yum install httpd"命令来安装Apache HTTP服务器。 请注意,如果您在安装软件包时使用了"--nodeps"和"--force"选项,可能会导致依赖关系问题和系统不稳定。建议在安装软件包时遵循正确的依赖关系,并避免使用这些选项,以确保系统的稳定性和安全性。\[3\] #### 引用[.reference_title] - *1* *2* [centos7.4安装sqlite2了导致“Failed to initialize NSS library”](https://blog.csdn.net/Name_kongkong/article/details/104768061)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Failed to initialize NSS library](https://blog.csdn.net/sj349781478/article/details/111311969)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值