Linux视频学习笔记(八)--RPM命令管理
声明:本系列文章是博主根据 “兄弟连新版Linux****”做的笔记和视频截图,只为学习和教学使用,不适用任何商业用途。
PS:文章基于Linux版本CentOS6.9,如果对Linux感兴趣,建议去看《细说Linux》,沈超老师和李明老师的教学风格我很喜欢:)
视频6.1 软件包管理-简介
1.源码包分类
源码包大多数都是c语言编写的;
现在Linux系统安装一般使用二进制包;
二进制包相比与源码包(RPM包):
二进制包是已经源码编译之后的包,
优点是执行速度快,缺点是不能看到源码;
Linux系统一般分两大类,二进制包类型:
- redhat系列(CentOS。。。),使用rpm包
- Debian、Ubuntu系列,使用deb包
2.源码包
源码包与rpm包在相同环境安装,可以多出5%左右的使用量
3.RPM包
6.2 软件包管理-rpm命令管理
视频6.2.1 软件包管理-rpm命令管理-包命令与依赖性
注意:
包名:httpd
包全名:httpd-2.2.15-…i686.rpm
不同的命令跟包名还是包全名是有区别的;
2.rpm包依赖
测试依赖性:
使用mkdir /mnt/cdrom
mount /dev/sr0 /mnt/cdrom
装载好光盘之后,在cdrom/Packages下可看到许多rpm包,
测试:
rpm -ivh mysql-connector-odbc-5.1.5r1144-7.el6.x86_64.rpm
i(安装) v(展示结果) h(展示过程)
安装mysql与odbc连接的rpm包,会发生依赖错误:
(以.so.2结尾的软件是某个包的软件,所以只要安装那个包就可以)
解决方案:
复制libodbcinst.so.2到www.rpmfind.net网址可以查找包含此软件的包,进行下载
或者
直接使用yum命令安装mysql-connector-odbc-5.1.5r1144-7.el6.x86_64.rpm
包,会自动安装依赖;但是redhat版本的Linux系统使用此命令需要收费,CentOS则不需要;
视频6.2.2 软件包管理-rpm命令管理-安装升级与卸载
使用包全名(如安装、升级);
使用包名(如查询、卸载)
2.rpm安装
(注意:安装一定要是包全名)
手工安装 Apache的三个包:
发现依赖太多(httpd为Apache的包)
3.rpm升级
3.rpm卸载
(注意:卸载跟的是包名,意味着在任何路径都可以,但是安装与升级则必须在指定Packages路径下)
视频6.2.3 软件包管理-rpm命令管理-查询
注意:
如果要查询未安装包信息,在i后跟p选项,并且 后跟 包全名
比如:进入到系统文件安装目录/etc 目录下:
视频6.2.4 软件包管理-rpm命令管理-校验和文件提取
1.RPM包校验
可用于校验文件内容有没有被人为修改
对上述的信息:
2.RPM包中文件提取
用途:一般此命令用于提取文件修复误删或修改的文件
注意:
\的作用仅仅是命令没有输完,换行用,所以上述命令为:
rpm2cpio 包全名|cpio –idv .文件绝对路径
.的作用是把文件提取到当前目录下,一般是固定格式;
cpio命令:
演示: