账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    yum update途中被我用ctrl+c中断,然后yum跟rpm就坏了
    43
    0

    问题描述

    昨天我在用 yum update 更新,结果在安装 nss-softokn-freebl-3.36.0-5.el7_5.x86_64 这个库的时候被我用 ctrl+c 打断了。然后 yum 跟 rpm 命令就用不了。报错如下:

    [root@centos7 caiyiheng]# yum
    error: Failed to initialize NSS library
    error: no dbpath has been set
    error: cannot open Packages database in /%{_dbpath}
    CRITICAL:yum.main:
    
    Error: rpmdb open failed
    [root@centos7 caiyiheng]# rpm
    error: Failed to initialize NSS library
    

    几乎所有的 yum 跟 rpm 命令敲出来都报这个错,像什么 yum clean, yum install, rpm install之类
    的。

    问题出现的平台版本及自己尝试过哪些方法

    我的系统是 centos7,安装在虚拟机里

    [root@centos7 caiyiheng]# uname -a
    Linux centos7 3.10.0-229.el7.x86_64 #1 SMP Fri Mar 6 11:36:42 UTC 2015 
    x86_64 x86_64 x86_64 GNU/Linux
    

    我首先查看了 yum 的日志,显示如下:

    [root@centos7 caiyiheng]# tail -f /var/log/yum.log
    Sep 21 05:53:21 Installed: wget-1.14-15.el7_4.1.x86_64
    Sep 21 05:53:21 Installed: lsof-4.87-5.el7.x86_64
    Sep 21 05:53:22 Installed: net-tools-2.0-0.22.20131004git.el7.x86_64
    Sep 26 17:28:11 Updated: libgcc-4.8.5-28.el7_5.1.x86_64
    Sep 26 17:28:12 Installed: 1:grub2-common-2.02-0.65.el7.centos.2.noarch
    Sep 26 17:28:13 Installed: 1:grub2-pc-modules-2.02-0.65.el7.centos.2.noarch
    Sep 26 17:28:13 Installed: firewalld-filesystem-0.4.4.4-14.el7.noarch
    Sep 26 17:28:14 Updated: tzdata-2018e-3.el7.noarch
    Sep 26 17:28:14 Updated: ncurses-base-5.9-14.20130511.el7_4.noarch
    Sep 26 17:28:15 Updated: nss-softokn-freebl-3.36.0-5.el7_5.x86_64
    

    所以我才知道是更新 nss 的时候跪了。

    然后昨天在网上搜了一堆,没有一个能解决的,比如:https://www.linuxquestions.or...

    又比如:https://serverfault.com/quest...

    我还照着上面缺 nspr 的方法,下了对应的那个 nss 的 rpm,https://centos.pkgs.org/7/cen...

    然后:rpm2cpio nss-softokn-freebl-3.36.0-5.el7_5.x86_64.rpm | cpio -idmv ,再把解出来的 usr 跟 etc 都拷进系统的 /usr 跟 /etc 里,还是没用。

    centos官方论坛有提到一个类似的问题,但跟我的问题肯定不太一样,我也试了那个 mount 的方法,没卵用:https://bugs.centos.org/view....

    实在是没有办法了,我也在爆栈提了一个一样的问题,希望能有朋友能帮我看看,谢了。。总不能让我重装系统吧。。。yum 还是要用的。。。另外不要说为什么不装 Ubuntu,公司运维提供的虚拟机,只有 centos。

    1
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 如果你在更新yum时被中断,你可能需要重启你的系统。你可以通过以下步骤来重启你的系统:

      1. 打开终端。

      2. 输入以下命令来重启你的系统: shutdown -h now

      3. 等待你的系统重启完成。

      如果yum和rpm无法正常工作,你可以尝试以下步骤来修复它们:

      1. 首先,你需要检查你的yum和rpm的安装路径。你可以通过以下命令来找到它们的安装路径: find / -name "yum" -exec /usr/bin/bash -c "cd {} && yum update && cd .." \; find / -name "rpm" -exec /usr/bin/bash -c "cd {} && yum install && cd .." \;

      2. 如果你的yum或rpm在找到它们的安装路径后无法正常工作,你可以尝试通过手动更新它们的安装路径来修复它们。你可以通过以下命令来更新yum的安装路径: sed -i '/^#define/ s/#define/#define/g' /etc/yum.repos.d/myrepo.conf

      3. 你也可以尝试通过手动更新rpm的安装路径来修复它们。你可以通过以下命令来更新rpm的安装路径: sed -i '/^#define/ s/#define/#define/g' /etc/yum.repos.d/myrepo.rpm

      请注意,这些步骤可能需要一些时间来完成,具体取决于你的系统和rpm的版本。在进行这些步骤之前,你应该备份你的数据,以防万一。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部