软件包管理:

烈酒焚心 提交于 2020-04-04 05:48:44
软件包分类:    1:源码包。Linux是C语言写的。        优点:            可以看到源代码。可以在源代码中修改(脚本安装包)。            安装后的效率高。            卸载方便(直接删除)。        缺点:            安装复杂。            编译时间长。    2:二进制包(RPM包、系统默认包)。经过编译的包。        优点:            安装速度快,        缺点:            是不能看到源码。(RPM包是红帽系列中使用的)            不能对源码修改。            依赖性(安装顺序和卸载顺序有要求)。RPM包管理-RPM包命令管理:    1:RPM包的命名规则        (RPM包在安装光盘中的package目录中)        例如:httpd-2.2.15-15.el6.centos.1.i686.rpm            httpd   软件包名            2.2.15  软件版本            15      发布次数            el6.centos  适合的Linux平台(el6或者centos)            i686    适合安装平台。(如果写的是x64表示只能安装在64位的cpu上)(如果写noarch表示任何Linux平台)    2:RPM依赖        树形依赖:a->b->c        环形依赖:a->b->c-a      //需要将软件包abc用一条命令同时安装。        模块依赖:安装过程中如果报出“xxxx.so.数字”说明这个依赖是库依赖(这个包不是单独独立的包,他是某一个软件包中的一个软件,因此只需要安装他所在的包就行)。                  可以到www.rpmfind.net中输入“xxxx.so.数字”就可以找到他的父包。    3:安装命令:        rpm -ivh 全包名            -i  安装            -v  显示详细信息            -h  显示进度            --nodeps    不检查依赖性    4:升级:        rpm -Uvh 包全名            -U  升级    5:卸载:        rpm -e 包名            -e 卸载    6:rpm查询:        rpm -q 包名    //软件包是否安装            -q 查询        rpm -qa       //查询所有安装了的包        rpm -qi 包名    //软件包是否安装和包信息            -q 查询            -i 包信息            -p 查询没有安装的软件包信息        rpm -qp 包全名    //查询未安装包信息            -q 查询            -p 查询没有安装的软件包信息        rpm -ql 包名      //查询安装位置            -l 列表            -p  未安装的包        ***查询软件包的依赖性        rpm -qR 包名            -R  查询依赖包            -p  未安装的包RPM包管理-yum在线管理:
(yum中有所有RPM包和依赖,使用命令一键安装。但是有的要收费(红帽))
  IP地址配置和网络yum源:
      1.1:配置网络使机器可以上网(红帽系列setup)(启用网卡onboot=yes),service network restart 重启网络服务。      1.2:centos可以使用官网免费的yum源(已经配置好了)。(centos官网访问缓慢,也可以使用国内免费的yum源)      1.3:yum源配置的文件在  /etc/yum.repos.d/CentOS-Base.repo           在/etc/yum.repos.d/目录下只要是以.repo结尾的都是合法的yum源。CentOS-Media.repo是本地光盘yum源。      1.4:vi/etc/yum.repos.d/CentOS-Base.repo
          [base]      //容器名称
          name=CentOS-$releasever - Base      //容器说明
          mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra       //所在地址镜像(默认使用)
          #baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/      //容器真正地址
          gpgcheck=1      //数字证书有效(0为无效)
          enabled=1      //是否生效,1生效,0不生效(默认是1)
          gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7     //证书的公钥文件保存位置
  光盘yum源搭建      1、挂在光盘      2、让网络yum源失效          yum源文件在/etc/yum.repos.d/          将网络yum文件改名,添加后缀使其不是以.repo结尾即可。      3、让光盘yum源有效          CentOS-Media.repo 是光盘yum源。        例如:
          [c7-media]
          name=CentOS-$releasever - Media
          baseurl=file:///media/CentOS/       //写光盘挂在地址(光盘yum源)
                  file:///media/cdrom/        //多余的两个地址注释掉即可。(不然每次使用都会提示找不到这个地址)
                  file:///media/cdrecorder/
          gpgcheck=1
          enabled=1   //使这个yum源有效
          gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
  yum命令:      2.1:查询          yum list          功能:获取服务器上可用的rpm包列表。          yum search 包名          功能:按照包名搜索服务器中的rpm包。      2.2:安装          yum -y install 包名              install 安装              -y  自动回答yes(安装时需要使用yes确认信息)      2.3:升级          yum -y update 包名    (切记:写包名,不写报名将会将服务器上的所有软件都升级,包括系统。)             update  升级              -y  自动回答yes      2.4:卸载          yum -y remove 包名    (切记:使用yum卸载时,将会卸载所有依赖包,系统有可能死掉。)              remove 卸载              -y 自动回答yes      2.5:yum软件组管理:          yum grouplist   查看所有可以安装的组。          yum groupinstall 软件组   安装软件组。(如果名字有空格使用""括起来)          yum groupremove 软件组名  卸载软件组。
RPM包的校验:    语法:rpm -V 包名   (用户判断安装的软件包是否被修改过)    回车后没有任何信息说明该软件包没有被修改过。    回车后列出了被修改的文件和修改信息。        S   文件大小是否改变        M   文件权限是否改变        5   md5是否改变了        L   文件路径是否改变        U   文件所有者是否改变        G   文件的所属组是否改变        T   文件的修改时间是否改变        c   配置文件        d   普通文件        g   鬼文件,这个文件不应该出现在这里,认证对待。        l   授权文件        r   描述文件RPM包中文件提取:    将RPM包中的部分文件提取出。(可以获取被误删的软件文件)
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!