Linux和CentOS软件包管理
admin
2023-05-26 21:21:11
0

(此处以httpd-2.2.15-56.el6.centos.3.x86_64.rpm为例)

  • 安装:# rpm -ivh httpd-2.2.15-56.el6.centos.3.x86_64.rpm

选项:

-i:安装,install

-v:以详细信息输出

-h:以#的个数显示安装进度,一个#表示2%的进度,hash

--test:仅测试,并不是真正执行安装过程,# rpm -ivh --test httpd-2.2.15-56.el6.centos.3.x86_64.rpm

备注:如果存在软件包的依赖关系,要么解决依赖关系后再安装,或者忽略依赖关系安装--nodeps

# rpm -ivh --nodeps httpd-2.2.15-56.el6.centos.3.x86_64.rpm

  • 重新安装:# rpm -ivh --replacepkgs httpd-2.2.15-56.el6.centos.3.x86_64.rpm

  • 删除:# rpm -e httpd

选项-e:删除,erase

备注:如果卸载被其他程序所依赖的包,要么不再卸载,或者把依赖的软件包一同卸载,或者忽略依赖关系卸载--nodeps# rpm -e --nodepshttpd

  • 查询:

  • 查询所有已安装的软件包:# rpm -qa

  • 查询所有已安装的、和httpd有关系的软件包:# rpm -qa httpd  # rpm -qa|grep httpd

  • 查询已安装的软件包信息:# rpm -qi httpd

  • 查询软件包是否安装:# rpm -q httpd

  • 查询软件包安装后生成的文件列表:# rpm -ql httpd

  • 查询指定文件是由哪个软件包安装后生成的:# rpm -qf /etc/passwd  # rpm-qf /bin/grep

  • 查询软件包安装后生成的帮助文档:# rpm -qd httpd

  • 查询软件包安装后生成的配置文件:# rpm -qc httpd

  • 查询软件包安装后相关的脚本文件:# rpm -q --scripts httpd

包括preinstall安装前脚本、postinstall安装后脚本、preuninstall卸载前脚本和postuninstall卸载后脚本

  • 查询尚未安装的软件包信息:# rpm -qpi httpd-2.2.15-56.el6.centos.3.x86_64.rpm

  • 查询尚未安装的软件包安装后生成的文件列表:# rpm -qpl httpd-2.2.15-56.el6.centos.3.x86_64.rpm

  • 查询尚未安装的软件包安装后生成的帮助文档:# rpm -qpd httpd-2.2.15-56.el6.centos.3.x86_64.rpm

  • 查询尚未安装的软件包安装后生成的配置文件:# rpm -qpc httpd-2.2.15-56.el6.centos.3.x86_64.rpm

  • 查询尚未安装的软件包安装后相关的脚本文件:# rpm -qp --scripts httpd-2.2.15-56.el6.centos.3.x86_64.rpm

包括preinstall安装前脚本、postinstall安装后脚本、preuninstall卸载前脚本和postuninstall卸载后脚本

  • 升级:# rpm {-Uvh | -Fvh} httpd-2.2.15-56.el6.centos.3.x86_64.rpm

选项:

-U:升级或安装软件包,老版本的软件包安装或未安装均可

-F:升级软件包,老版本的软件包必须事先已安装好

-v:以详细信息输出

-h:以#的个数显示安装进度,一个#表示2%的进度,hash

--nodeps:忽略依赖关系

--force:强行安装

备注:不要对内核进行升级操作,多版本内核可共存

  • 校验(检查软件包安装后生成的文件是否被修改过):# rpm -V httpd

  • 导入制作者的公钥CentOS发行版的公钥在iso文件中):# rpm --import RPM-GPG-KEY-CentOS-6

  • 检查(软件包完整性和软件包来源合法性):# rpm -K httpd-2.2.15-56.el6.centos.3.x86_64.rpm

选项:

--nosignature:不检查软件包来源合法性,只检查软件包完整性

--nodigest:不检查软件包完整性,只检查软件包来源合法性

  • rpm包数据库/var/lib/rpm初始化:# rpm --initdb

初始化:事先不存在该数据库,新建一个数据库

  • rpm包数据库/var/lib/rpm重建:# rpm --rebuilddb

重建:直接重建数据库,会覆盖原有的数据库


yum:要使用yum管理软件包,首先需要配置可用的yum仓库,一般保存在配置文件/etc/yum.conf/etc/yum.repos.d/*.repo

配置文件/etc/yum.conf格式:由主配置段[main]和仓库配置段[repo]两段组成,默认只有主配置段[main]

# vim /etc/yum.conf

[main]

cachedir=/var/cache/yum/$basearch/$releasever

keepcache=1

debuglevel=2

logfile=/var/log/yum.log

exactarch=1

obsoletes=1

gpgcheck=1

plugins=1

installonly_limit=5

bugtracker_url=http://bugs.centos.org/set_project.php?project_id=19&ref=http://bugs.centos.org/bug_report_page.php?category=yum

distroverpkg=centos-release


yum常用命令:

  • 安装指定的软件包:# yum [-y] install httpd

  • 删除指定的软件包:# yum [-y] erase | remove httpd

  • 安装本地软件包:# yum [-y] [--nogpgcheck] installhttpd-2.2.15-56.el6.centos.3.x86_64.rpm

选项:

-y:不询问,自动安装

--nogpgcheck:手动禁止检查软件包的来源合法性和完整性

  • 重新安装指定的软件包:# yum [-y] reinstall httpd

  • 显示已配置的yum仓库:# yum repolist [all]

  • 删除缓存的数据:# yum clean {all | packages | metadata | expire-cache | rpmdb |plugins | dbcache | headers}

  • 显示符合要求的所有rpm包:# yum list [all | installed | available]

  • 显示软件包的相关信息:# yum info httpd

  • 显示所有软件包组:# yum grouplist    //CentOS 6.x中常用的3个软件包开发包组,"DevelopmentTools""ServerPlatform Development""Desktop Platform Development"

  • 显示软件包组的相关信息:# yum groupinfo "Desktop Platform Development"

  • 安装指定的软件包组:# yum [-y] groupinstall "Desktop Platform Development"

  • 删除指定的软件包组:# yum [-y] groupremove "Desktop Platform Development"

  • 检查可升级的软件包:# yum check-update

  • 升级指定的软件包为最新版本:# yum update | upgrade [httpd]

  • 降级指定的软件包:# yum downgrade httpd

  • 查询指定文件是由哪个软件包安装后生成的:# yum provides | whatprovides /etc/passwd /bin/grep

  • 显示yum的操作历史记录:# yum history

  • 显示指定软件包的依赖关系:# yum deplist httpd

  • 生成元数据缓存:# yum makecache

  • 在软件包详细信息中搜索指定字符串:# yum search httpd

相关内容

热门资讯

演习首日发生意外事故:台空军一... 【环球网报道 记者 徐思琦】据中时新闻网、中天新闻网等台媒8月5日报道,台军所谓“汉光42号演习”首...
奥运冠军陆春龙挂职担任苏州大学... 澎湃新闻记者 岳怀让近日,苏州大学体育学院官网“现任领导”栏目更新信息显示,陆春龙已经挂职担任苏州大...
我国科研人员研发亚10毫秒级神... 来源:环球网 【环球网科技综合报道】8月5日消息,据《科学》(Science)报道称,近日,中国科学...
出生相隔55分钟被抱错,女子错... 面对被医院错换的37年人生,李慧(化名)选择用最朴素的方式,为自己和两个家庭讨一个说法:她把半生艰辛...
Transformer上限触顶... Transformer 的上限在哪里?这个问题从 2022 年 ChatGPT 问世起,就开始被广泛...
华为余承东:手机之后可能都要大... IT之家 8 月 5 日消息,在今天(8 月 5 日)的尊界时代旗舰 MPV 及华为全场景新品发布会...
北方股份获得实用新型专利授权:... 证券之星消息,根据天眼查APP数据显示北方股份(600262)新获得一项实用新型专利授权,专利名为“...
惊险瞬间!巡查人员劝退通行货车... 受强降雨影响,8月5日,国道108秦岭山区段西安马召镇至汉中佛坪方向约20公里处发生山体塌方。在塌方...
美媒爆:检察官皮罗拖着“一箱证... 【环球网报道 记者 李飒】美国首都华盛顿地标建筑林肯纪念堂倒影池改造引发的风波持续发酵。据《纽约时报...
乌方:一支朝鲜导弹部队已向俄罗... 据凤凰卫视报道,乌克兰国家安全局日前表示,在过去40天里对俄罗斯境内100多处战略目标实施打击,包括...