软件包管理之rpm与yum实验手册
第一章 实验思路
1.1实验环境:VMware、Centos7、MobaXterm软件
1.2 实验要求:通过在ssh对主机的远程登录,进行rpm yum 的相关操作如安装、查看、卸载等,了解rpm与yum 的区别,掌握相关命令及命令的含义。
第二章 实验目的
- 掌握rpm的安装、卸载等相关操作
- 掌握yum的安装、卸载等相关操作
- 熟悉相关命令及含义
第三章 实验步骤
3.1 rpm
rpm是以一种数据库记录的方式来将将所需要的套件安装在Linux主机的一套管理程序。也就是说Linux系统中存在一个关于rpm的数据库,它记录了安装的包与包之间的依赖相关性。rpm包是预先在Linux主机上编译好并打包的文件,安装起来非常快捷。下面就介绍rpm常用的命令
rpm:后端包管理工具
3.1.1 安装
rpm:rpm is package manager
安装,查询,校验,更新以及卸载单个软件包
-i (install)安装软件
-v (verbose) 显示详细信息
-vv 显示更详细的信息
-h 显示执行进度(比如以“#”)
rpm -i [install-options] <package_file>+ 安装程序包
安装程序包一般安装在Packages目录下:
1. 先用命令 find / -name Packages //查询Packages的路径
2.进入该路径下 cd /media/Packages
用ls 查看Packages下的内容
3. rpm -ivh zip-3.0-11.el7.x86_64.rpm 安装软件zip
ivh是i(安装)、v(查看详细信息)、h(查看安装进度)的组合
rpm -ivh --test 测试安装,不真正的执行安装
rpm -ivh --nodeps 在安装或升级包之前不做依赖检查,一般不建议这样做
rpm -ivh --replacepkgs 即使包的部分内容已安装在系统里,也安装该包.
3.1.2 升级
rpm -U [install-options] <package_file>+ 有则升级;没有则安装
如下用 rpm -U zsh-5.0.2-33.el7.x86_64.rpm
rpm [-F|--freshen] [install-options] <package_file>+ 仅仅升级
3.1.3 查询
rpm -q [query-options]
rpm -qa | grep zsh 在所安装的所有程序中查询zsh
-f <file>, --file <file> 查询拥有文件<file>的包
-c, --configfiles 只列出配置文件(隐含-l选项).
rpm -q -c hyphen 查询hyphen的配置文件位置
rpm -ql 查询配置文件
rpm -qR hyphen 查询hyphen的依赖文件
3.1.4 卸载
rpm -e <package_name>+
因为有依赖关系,即和其他文件相关联,所以不容易被删除,也要谨慎删除 。
3.2 yum
3.2.1 yum 安装
yum:rpm的包的管理工具,前端包管理工具
-y //默认安装,指在安装时遇到系统询问一律为同意yes
* install package1 [package2] [...]
reinstall 重新安装
yum -y install httpd 安装httpd协议
* repolist [all|enabled|disabled]显示仓库列表 ;all为全部列表,enable为显示开启列表,disabled显示禁止列表
*list 显示程序包
3.2.2 升级
* update [package1] [package2] [...] 升级程序包
3.2.3 卸载
* remove | erase package1 [package2] [...]
3.2.4 清除本地缓存
* clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]
第四章 问题解决
在进行卸载时有些包因为是相互关联依赖的,不好进行卸载操作,也要谨慎删除,在进行操作时没有进入相关路径下时,输入的命令会不成功,显示错误。
第五章 实验思考和总结
通过这次实验,基本掌握了rpm与yum的相关操作与区别,rpm 只能安装已经下载到本地机器上的rpm 包,且包的依赖性强,卸载时比较麻烦; yum能在线下载并安装rpm包,能更新系统,且还能自动处理包与包之间的依赖问题,这个是rpm 工具所不具备的。