zoukankan      html  css  js  c++  java
  • Linux从入门到进阶全集——【第八集:软件包管理:rpm、tar、yum】

    1,对Linux下软件的了解

      源码包:未编译,要编译安装。

      二进制包:已编译,可直接安装。

    2,centos和ubuntu下的软件包对比:

      [centos]rpm文件手动安装,使用rpm指令        ——       [ubuntu]deb文件手动安装,使用dpkg指令
      [centos]yum在线安装                                              ——       [ubuntu]apt-get在线安装 
     
    3,可以知道镜像解压后的packages里存放的就是各种rpm包:

    RPM的命名规则:

      如:

      

      httpd-2.2.15-15.el6.centos.1.i686.rpm

        httpd:表示软件包名

        2.2.15:表示软件版本

        15:软件发布的次数

        el6.centos:适合的linux平台

        i686:适合的硬件平台

        rpm:rpm包的扩展名

     注意:我们需要挂在那个镜像,说白了就是插上光驱,查看光驱内的文件,但是在虚拟机中我们需要挂载:参考博客:https://www.cnblogs.com/qiyebao/p/4331290.html

      

    4,RPM包依赖性

      树形依赖:a->b->c

      环形依赖:a->b->c->a

      模块依赖:模块依赖查询网站:www.rpmfind.net   也可以使用这个网站查询rpm包

    为了解决包的依赖性问题,我们建议使用yum在线安装,这样避免包的依赖性安装。

    已经安装的包:会在/var/lib/rpm目录下的数据库中记载

      

    安装rpm包:rpm -ivh 包全名

          -i:install 安装

          -v:verbose 现实详细信息

          -h:hash  显示进度

          --nodeps:不检测依赖性

    5,手动安装:

      1,关在光驱,进入到/mnt/cdrom/Packages目录中

      

      2,从我的安装图可知,需要先安装众多依赖,那只能从底层看起逐层安装,才能最后安装http-2.2.15-26.el6.centos.rpm这个rpm包

      3,从apr-1.3.9-5.el6_2.i686.rpm开始安装

      4,

      5,在安装的过程中看到以数字结尾的包,这些都是库包,是某些rpm包内的包,需要安装它所在的rpm包,通过www.rpmfind.net 去找他所属的rpm包,

    然后只需安装apr-1.3.9-5.el6_9.1.i686.rpm就可以了。

      6,如果最后安装完毕了,我们可以检测一次,检测方法:重装一遍,httpd-2.2.15-26.el6.centos.i686.rpm

    只要没有报错,就可以知道没有依赖问题了。

      7,到这一步,还没有安装完毕整个httpd-xxx这个rpm包,还需要把其他的以httpd-xxx开头的包也安装上。

     可是在安装httpd-devel-xxx的过程出现了太多的依赖,所以,我还是放弃了。。。。。

    ===》还是使用yum命令在线安装了。

    6,升级rpm包:
      rpm -Uvh 包全名

        -U:update升级

    7,卸载rpm包:

      rpm -e 包名     (可以不死包全名,因为已经安装上了,在/var/lib/rpm数据库中有记载)

        -e:erase 卸载

        --nodeps:不检测依赖性

     

    8,查询RPM包:

      1,查询rpm包的命令基本格式:rpm -q,如果有其他什么参数,统一放到-q后面。

      2,查询linux系统中已经安装的所有软件包:rpm -qa

      3,配合more命令使用:rpm -qa | more     配合head使用rpm -qa | head -5

      4,配合管道符|和grep命令使用:rpm -qa | grep httpd

      5,配合wc命令:rpm -qa | wc -l

      6,查询某个rpm包是否安装:rpm -q 包名(包名需要精确拼写)

      7,查询软件包的详细信息:rpm -qi 包名(包名需要精确拼写)

      8,查询已安装软件包安装过程中安装了的所有文件:rpm -ql 包名(包名需要精确拼写)

      9,查询指定文件所属的软件包:rpm -qf 文件路径和名称

      10,

      11,

     9,上面是rpm包的手动安装,非常繁琐,因此我们建议使用yum在线安装:

      yum是rpm包管理工具,能够从源空间,自动下载目标rpm,并且自动安装。

      yum的rpm包下载源路径在/etc/yum.repos.d目录下的.repo文件配置中指定

      1,yum -y install 包名

      2,yum list

      3,yum check-update

      4,yum update

      5,yum update 包名

      6,yum -y update

      7,yum remove 包名

    参考:https://my.oschina.net/u/3803405/blog/1791255/

    Linux系统下yum命令查看安装了哪些软件包: 
    $yum list installed //列出所有已安装的软件包 


    yum针对软件包操作常用命令: 
    1.使用YUM查找软件包 
    命令:yum search php


    2.列出所有可安装的软件包 
    命令:yum list php


    3.列出所有可更新的软件包 
    命令:yum list updates 


    4.列出所有已安装的软件包 
    命令:yum list installed 


    5.列出所有已安装但不在 Yum Repository 内的软件包 
    命令:yum list extras 


    6.列出所指定的软件包 
    命令:yum list +包名


    7.使用YUM获取软件包信息 、显示yum包的信息:
    命令:yum info PACKAGE_NAME


    8.搜索yum包:
    命令:yum search PACKAGE_NAME


    9.列出所有可更新的软件包信息 
    命令:yum info updates 


    10.列出所有已安装的软件包信息 
    命令:yum info installed 


    11.列出所有已安装但不在 Yum Repository 内的软件包信息 
    命令:yum info extras 


    12.列出软件包提供哪些文件 
    命令:yum provides

    13、更新具体的yum包:

    $ yum update PACKAGE_NAME

    14.显示已启用的yum存储库的列表:

    $ yum repolist

    15.清除yum缓存:

    $ yum clean all

    $ yum clean all

    16.找出哪个yum包提供了一个特定的文件(例如:/usr/bin/nc)):

    $ yum whatprovides "*bin/nc"

    17.卸载yum包装:

    $ yum remove PACKAGE_NAME

    18.取出yum包装:

    $ yum downloader PACKAGE_NAME

    20.重新安装一个yum包:

    $ yum reinstall PACKAGE_NAME

    10,关于tar的讲解详见

    Linux安装Tomcat-Nginx-FastDFS-Redis-Solr-集群——【第六集之基本命令使用】

    (配置两个网卡的引用:http://www.cnblogs.com/52php/p/6368186.html)

  • 相关阅读:
    Unity错误-(Android build error) Can not sign application Unable to sign application; please provide passwords!
    C#WCF中传输List对象
    抓包工具Omnipeek,Wireshark
    Ubuntu18+.netcore+Nginx+Supervisor部署ASP.NET项目
    3D成像技术
    3D显示技术
    学习模电与数电
    【Java123】解决PKIX path building failed / unable to find valid certification path to requested target
    【Python123】Introduction
    【WebConsole123】练习案例之浏览器访问服务器shell
  • 原文地址:https://www.cnblogs.com/lirenhe/p/10591145.html
Copyright © 2011-2022 走看看