学习Linux运维的个人笔记:Linux软件管理-中(十九)

一、yum的基本介绍

  • Yum是RedHat以及CentOS中的软件包管理器。能够通过互联网下载 .rpm 包并且安装,并可以自动处理依赖性关系,无须繁琐地一次次下载、安装。
  • yum源:要成功的使用 YUM 工具安装更新软件或系统,就需要有一个包含各种 rpm 软件包的repository(软件仓库),这个软件仓库我们习惯称为 yum 源。(可以是本地源、网络源)
  • 配置yum源
#base源:  基础软件包
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
#epel源:  第三方软件
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

配置一个源的方式有两种:

  1. 手动添加一个 repo 文件(手动)
  2. 安装一个 “ release ” 的包,包中提供一个repo的文件(自动)

二、yum实际应用

  • 使用yum安装软件包的方式
#1.yum通过公网仓库进行安装
yum install tree 		#交互,麻烦
yum install tree -y		#非交互

#2.yum安装公网的rpm包,会自动找当前系统上已有的仓库解决依赖关系
 yum install https://mirrors.aliyun.com/centos/7.6.1810/os/x86_64/Packages/samba-4.8.3-4.el7.x86_64.rpm

#3.yum直接安装本地的rpm包,会自动查找当前系统上已有的仓库解决依赖关系
yum localinstall  samba-4.8.3-4.el7.x86_64.rpm

如果下载一个rpm包到本地
若用rpm -ivh进行安装,安装过程中会碰到很多依赖,需要手动去安装这些依赖。
而用yum localinstall,会自动处理这些依赖:

  1. 分析软件的依赖
  2. 通过所有已经配置的repo源,上对应的仓库去寻找所需要的依赖包
  3. 安装所有的依赖包,最后安装本地的rpm
#下载一个rpm包到本地
wget https://mirrors.aliyun.com/mongodb/yum/redhat/7/mongodb-org/3.6/x86_64/RPMS/mongodb-org-3.6.0-1.el7.x86_64.rpm
#rpm -ivh mongodb-org-3.6.0-1.el7.x86_64.rpm  用这种会很麻烦所以一般选择不用
#配置一个MongoDB的源
cat /etc/yum.repos.d/mongodb.repo
	[mongodb-org]
	name = MongoDB Repository
	baseurl = https://mirrors.aliyun.com/mongodb/yum/redhat/$releasever/mongodb-org/3.6/x86_64/
	gpgcheck = 0
	enabled = 1
	gpgkey = https://www.mongodb.org/static/pgp/server-	3.6.asc
#然后用yum本地安装
yum localinstall mongodb-org-3.6.0-1.el7.x86_64.rpm
  • 使用yum重新安装软件包方式
#不小心删掉配置文件
rm -f /etc/vsftpd/vsftpd.conf
#对包进行重新安装
yum reinstall vsftpd
#检查软件的配置文件
rpm -qc vsftpd
  • 使用yum更新软件包
#1.对比Linux已安装的软件和yum仓库中的软件, 有哪些需要升级
yum check-update

#2.更新acl软件
yum update acl -y

#3.更新整个系统所有的软件,包括内核 (通常刚装完系统会进行执行)  非常危险
yum update -y
  • 使用yum删除软件包
yum install vsftpd -y		#安装
yum remove vsftpd -y		#删除
  • 与yum仓库相关指令
yum repolist		#查看 当前可用的仓库
yum repolist all 	#查看所有的仓库(不管是否可用)
#查看一个命令或文件所属软件包是什么
rpm -qf $(which cd)	#需要知道命令的绝对路径
yum provides cd

如何启用或禁止仓库
两种方式:

  1. 找到该仓库的repo文件,将里面的enable 修改为 0不启用 1启动
  2. gzip /etc/yum.repos.d/xx.repo 压缩该文件,让该文件失效
  • 与yum缓存相关指令
#1.缓存rpm包方式一、修改yum全局配置文件
vim /etc/yum.conf
	[main]
	cachedir=/var/cache/yum/$basearch/$releasever
	keepcache=1     #启动缓存

#2.缓存rpm包方式二,只下载不安装
yum install -y yum-plugin-downloadonly #插件
yum install httpd -y --downloadonly --downloaddir=/tmp

#3.清除所有yum缓存的软件包以及元数据
yum clean all

#4.只清除缓存的软件包
yum clean packages
  • 组包相关指令
yum groups list
#安装一整个组的软件
yum groups install Development tools \
Compatibility libraries \
Base Debugging Tools

#yum删除包组
yum groups remove  -y Base
  • 历史记录指令
#1.查看历史执行yum命令
yum history

#2.查询历史执行yum命令ID详细信息
yum history info N

#3.撤销历史执行过的yum命令
yum history undo N

命令总结

命令 描述
yum install 安装
yum reinstall 重装
yum update 更新
yum remove 删除
yum repolist 查看仓库总和的rpm包
yum repolist all 查看所有的仓库 ( 包括启用和禁用 )
yum provides 查询命令是 哪个仓库下的哪个软件包提供
yum groups install 安装组包
yum groups remove 移除组包
yum history 查询yum历史记录
yum history info 查询yum命令ID详细信息
yum history undo 撤销历史记录
yum clean all 清理所有的缓存
yum clean packages 清理所有已缓存的rpm包
yum deplist 查看所依赖的软件包
发布了34 篇原创文章 · 获赞 10 · 访问量 2329

猜你喜欢

转载自blog.csdn.net/weixin_44903608/article/details/105073069