设为首页 收藏本站
查看: 572|回复: 0

[经验分享] Linux和CentOS软件包管理

[复制链接]

尚未签到

发表于 2018-4-23 09:51:54 | 显示全部楼层 |阅读模式
(此处以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

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-450761-1-1.html 上篇帖子: centos7下搭建cacti 下篇帖子: CentOS下安装Nagios
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表