• 一个yum源安装问题引发的工作态度的思考


    记录下安装pg过程中遇到的一个小问题:

    [root@db-server1 yum.repos.d]# yum install readline-devel   
    Loaded plugins: fastestmirror, langpacks
    Loading mirror speeds from cached hostfile
    Resolving Dependencies
    --> Running transaction check
    ---> Package readline-devel.x86_64 0:6.2-10.el7 will be installed
    --> Processing Dependency: readline = 6.2-10.el7 for package: readline-devel-6.2-10.el7.x86_64
    --> Processing Dependency: ncurses-devel for package: readline-devel-6.2-10.el7.x86_64
    --> Running transaction check
    ---> Package ncurses-devel.x86_64 0:5.9-14.20130511.el7_4 will be installed
    ---> Package readline-devel.x86_64 0:6.2-10.el7 will be installed
    --> Processing Dependency: readline = 6.2-10.el7 for package: readline-devel-6.2-10.el7.x86_64
    --> Finished Dependency Resolution
    Error: Package: readline-devel-6.2-10.el7.x86_64 (base)
               Requires: readline = 6.2-10.el7
               Installed: readline-6.2-11.el7.x86_64 (@base)
                   readline = 6.2-11.el7
               Available: readline-6.2-10.el7.x86_64 (base)
                   readline = 6.2-10.el7
     You could try using --skip-broken to work around the problem
     You could try running: rpm -Va --nofiles --nodigest
    [root@db-server2 yum.repos.d]# yum install ncurses-devel.x86_64
    Loaded plugins: fastestmirror, langpacks
    Loading mirror speeds from cached hostfile
    Resolving Dependencies
    --> Running transaction check
    ---> Package ncurses-devel.x86_64 0:5.9-14.20130511.el7_4 will be installed
    --> Finished Dependency Resolution
    
    Dependencies Resolved
    
    ==================================================================================================================================================================
     Package                                 Arch                             Version                                            Repository                      Size
    ==================================================================================================================================================================
    Installing:
     ncurses-devel                           x86_64                           5.9-14.20130511.el7_4                              base                           712 k
    
    Transaction Summary
    ==================================================================================================================================================================
    Install  1 Package
    
    Total download size: 712 k
    Installed size: 2.1 M
    Is this ok [y/d/N]: y
    Downloading packages:
    Running transaction check
    Running transaction test
    Transaction test succeeded
    Running transaction
      Installing : ncurses-devel-5.9-14.20130511.el7_4.x86_64                                                                                                     1/1 
      Verifying  : ncurses-devel-5.9-14.20130511.el7_4.x86_64                                                                                                     1/1 
    
    Installed:
      ncurses-devel.x86_64 0:5.9-14.20130511.el7_4                                                                                                                    
    
    Complete!
    

      手工安装好ncurses-devel后还是报错,如下:

    [root@db-server1 ~]# yum install readline-devel.x86_64
    Loaded plugins: fastestmirror, langpacks
    Loading mirror speeds from cached hostfile
    base                                                                                                                                       | 3.6 kB  00:00:00     
    Resolving Dependencies
    --> Running transaction check
    ---> Package readline-devel.x86_64 0:6.2-10.el7 will be installed
    --> Processing Dependency: readline = 6.2-10.el7 for package: readline-devel-6.2-10.el7.x86_64
    --> Finished Dependency Resolution
    Error: Package: readline-devel-6.2-10.el7.x86_64 (base)
               Requires: readline = 6.2-10.el7
               Installed: readline-6.2-11.el7.x86_64 (@base)
                   readline = 6.2-11.el7
               Available: readline-6.2-10.el7.x86_64 (base)
                   readline = 6.2-10.el7
     You could try using --skip-broken to work around the problem
     You could try running: rpm -Va --nofiles --nodigest
    

      遇到报错,本能进行度娘,网上基本都在讲是yum配置问题,一度怀疑自己配置的本地yum真的存在问题。按照网上的各种尝试无果,便重新看报错的字面意思:

    提示要安装readline-devel.x86_64需要先安装readline-6.2,目前可以从配置的yum中可以获得的版本是readline-6.2-10.el7.x86_64 (base)  readline-devel-6.2-10.el7.x86_64 (base)。

    已经安装的版本为readline-6.2-11.el7.x86_64,再安装readline-devel-6.2-10.el7.x86_64这个版本无法安装上。

    [root@db-server1 yum.repos.d]# rpm -aq  readline*            
    readline-6.2-11.el7.x86_64
    

      知道了原因,问题就好解决了,第一种思路是对已经安装的readline-6.2-11.el7.x86_64进行降级到6.2.10版本,第二种思路是安装readline-devel的6.2.11版本。比较奇怪的一点是操作系统是centos7.6版本的,自己配置的本地yum源也是用的7.6版本的,至于为什么存在版本问题就不去深究了,从官网上下载对应的rpm包后成功解决。

    https://centos.pkgs.org/7/centos-x86_64/readline-devel-6.2-11.el7.x86_64.rpm.html

    [root@db-server1 postgres]# rpm -ivh readline-devel-6.2-11.el7.x86_64.rpm 
    Preparing...                          ################################# [100%]
    Updating / installing...
       1:readline-devel-6.2-11.el7        ################################# [100%]
    

      总结:其实解决方法没有啥难度,关键是处理问题的方向,不能遇到问题拿到手就去网上搜,有时候仔细看下报错,自主思考一下,就很容易解决了。

    一直在路上!
  • 相关阅读:
    TC2.0库函数大全
    【转帖】2004年度电影作品盘点之好莱坞篇
    C++文件流读写txt文件
    Linux 使用技巧
    最长字符串匹配算法(KMP算法)
    回调函数
    C#中对XML文件的一些基本操作[转载]
    指针与引用的区别
    中文核心期刊目录
    十大最考验演技的角色
  • 原文地址:https://www.cnblogs.com/penggepiaopiao/p/14861788.html
Copyright © 2020-2023  润新知