软件包管理
RPM软件包管理
软件包管理,顾名思义就是对Linux操作系统的软件及安装包进行管理,比如下载、安装、卸载等等,就好比我们Windows上的控制面板->软件管理。
yum ---> RedHat/Centos/Fedora
apt ---> Ubuntu/debain
git ---> github项目仓库的管理程序
pip ---> Python的第三方库管理程序
命令:RPM
作用:对RPM格式软件包进行安装、查询、更新、升级、卸载以及生成.rpm格式的软件包等
RPM软件包
RPM软件包拥有一个头文件,其中包含有关于本软件包的相关信息,便于对软件包信息进行查询
RPM软件包的典型命名格式:
dhcp-4.2.5-68.el7.centos.1.x86_64.rpm
软件名-版本号-发行号.操作系统版本.硬件平台类型.rpm
查询已安装的软件包信息
语法:rpm -q [子选项] [软件名]
-qa : 显示当前系统中以RPM方式安装的所有软件列表
-qi : 查看指定软件包的名称、版本、许可协议、用途描述等详细信息
-ql : 显示指定的软件包在当前系统中安装的所有目录、文件列表
-qf : 查看当前指定的文件或目录是由那个软件包所安装的
-
执行 rpm -qa 命令将列出当前操作系统中已经安装的所有软件包列表
-
当查询某个软件包是否已经安装时,可以直接使用软件包名称作为查询参数
rpm -q python
- 如果不知道准确的软件包名称,还可以对全部查询结果进行过滤
rpm -qa | grep -i python
- 如果想知道已安装的某个软件的用途,可以使用 rpm -qi 软件名
rpm -qi python-netaddr
- 当需要查看某个软件包安装的目录和文件清单时,可以使用 rpm -ql 软件名
rpm -ql python
注:使用rpm命令只能查询通过rpm方式安装的软件包信息,其他途径安装到系统中的软件包,rpm无法获取相关信息。
查询未安装的软件包信息
安装一个软件包前,需要了解软件包的相关信息,比如:该软件包的描述信息、文件列表等。在查看参数基础上添加上p`参数即可实现对未安装软件包相应的信息显示。
rpm -qlp [软件包名] 显示软件包准备要安装的所有目录、文件列表
rpm -qpi [软件包名] 显示指定软件包的名称、版本、许可协议、用途描述等详细信息
安装/升级/卸载RPM软件包
语法:RPM [ 选项 ] [ 包名 ]
常用参数
注意:如果其它软件包有依赖关系,卸载时会产生提示信息,可使用–nodeps强行卸载。
Centos挂载镜像
演示依赖性问题
需要在虚拟机设置中CD/DVD选择Centos镜像,勾选上方已连接
进入虚拟机输入 df -h 查看是否镜像挂载成功。
![er-images%5Cimage-20230515195245199.png&pos_id=img-vfrKuHMI-1711368051648)
将镜像挂载到目录
mkdir /dvd # 创建目录
mount /dev/sr0 /dvd #挂载
YUM软件管理
rpm软件包虽然方便,但是需要手动解决软件包一栏的问题。
YUM 是改进型的 RPM 软件管理工具,它很好的解决了 RPM 所面临的软件包依赖问题。YUM 在服务器端存有所有的 RPM 包,并将各个包之间的依赖关系记录在文件中,当管理员使用 YUM 安装 RPM 包时,YUM 会先从服务器端下载包的依赖性文件,通过分析此文件从服务器端一次性下载所有相关的RPM 包并进行安装。
专门为了解决包依赖关系的软件包管理工具
特点如下:
- 自动解决依赖关系
- 对RPM进行分组,并基于组进行安装
- 引入仓库概念,支持多个仓库
- 配置简单
Yum引入仓库的概念:仓库用来存放所有现有的RPM软件包,当使用yum安装一个rpm软件时,如果存在依赖关系,会自动在仓库中查找依赖关系并进行安装,仓库可以使用本地的,也可以通过HTTP、FTP、NFS形式使用集中的、统一的网络仓库。
软件安装
yum -y install [包名] 安装软件,-y时参数自动确定。
yum -y reinstall [包名] 重新安装
更新软件
yum -y update [包名] 升级某个软件
yum -y update 更新所有软件
卸载软件
yum -y remove [包名] 卸载软件
常用参数:
命令 | 功能 |
---|---|
yum install 【-y】 包名 | 安装指定的软件包,若选-y则在工作过程中需要使用者响应,这个参数可以直接回答yes |
yum update 【-y】 包名 | 升级指定的软件包或主机中所有已安装的软件包 |
yum remove 【-y】 包名 | 卸载已经安装在系统中的指定的软件包 |
yum search 【-y】 包名 | 查看模糊包名的软件包 |
更改yum源
网络yum源配置文件位于 /etc/yum.repos.d
目录下,文件拓展名为 .repo (拓展名为**.repo**的文件都是yum源的配置文件)
更改YUM源步骤:
- YUM源进行备份
进入到yum源的配置文件中
执行命令如下:
cd /etc/yum.repos.d
mv CentOS-Base.repo CentOS-Base.repo.bak
- 下载网易YUM源
执行命令:wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
- 更换YUM源
执行命令:mv CentOS7-Base-163.repo CentOS-Base.repo
- 生成YUM缓存
执行命令:yum makecache
- 对YUM源进行更新
执行命令:yum -y update
上述就是更改yum源的步骤,更新yum源过程需要等待一段时间,等yum源更新完成之后,yum源就可以使用。