Linux软件发布方式
Linux软件通常以软件包的形式来发布,常见的软件包格式为源代码(一般被打包成tar.gz)和RPM和YUM。
一,源代码,RPM,YUM三种软件发布方式的优缺点
1) 源代码:
需要编译成二进制之后才能运行使用。
缺点:使用麻烦。编译时间较长,容易出错。
优点:兼容性和可控制性较好。适用所有系统,可定制。
2) RPM:
软件包管理方式,通过将源代码基于特定平台系统编译为可执行文件。并保持依赖关系,来简化开源软件的安装管理。 使用rpm文件格式发布,追踪软件依赖关系,可升级,信息查询,验证功能。
缺点:兼容性需要判断,编译环境需要确定,RPM无法解决软件包的依赖关系。
优点:使用简单,多平台,省掉中间编译步骤。
3)YUM:
自动解决软件包之间的依赖关系。使用仓库保存管理RPM包。
缺点:??????
优点:能在线下载并安装rpm包,能更新系统,且还能自动处理包与包之间的依赖问题。
二,RPM软件包
1,RPM软件包文件名
1) name-version.type.rpm 产品名.支持平台类型.压缩
eg:software-3.0-19.2(产品名) . x86-64(支持平台). rpm
(type类型):i[3456]86表示在64位计算机平台上编译。
2) 软件包名称 -版本号-发行号-硬件平台.rpm
eg:xplns-elm(软件包名称)-3.3.1(版本号)-1(发行号).i386(硬件平台).rpm
2,如何获取匹配的RPM包
1),从发行版本ISO中查找
2),从软件的主站点查找
3),http://www.rpmfind.net查找
3,RPM管理命令
1) rpm -i(加上vh,显示所有详细信息) 产品名.rpm
安装软件
2)rpm -e 产品名
卸载软件(不用加rpm)
3)rpm -U 产品名.rpm
升级软件
4)rpm -q 产品名
查询软件
4,RPM常见查询命令
1)rpm -qa
列出所有已安装的rpm包
rpm -qa|grep ^c
查询以c开头的文件
rpm -qa|grep ^c|wc -l
计算以c开头的文件
2)rpm -q (或者rpm --quer)
查询指定软件包是否安装
3)rpm -qf filename
查询目标文件属于哪个rpm
4)rpm -qi packagename
查询指定已安装rpm(这个packagename )包的信息
5)rpm -ql packagename
查询指定已安装rpm包含的文件
6)rpm -qip software.rpm
查询rpm文件的信息
5,RPM软件包的安装
使用带-i的rpm命令就可以实现RPM软件包的安装
1)普通安装
采用-ivh :表示显示附加信息和安装进度#符号的安装方式,使用最多的安装方式。
2)测试安装
采用-i --tset : 测试安装并没有实际安装,当用户对安装不是很确定时,可以先测试安装,观察是否有错误,没有错误在进行普通安装。.
3)强制安装
采用 -i --force :强制安装,忽略软件包之间的依赖关系及文件的冲突。
6,RPM软件安装可能出现的错误
1)RPM重复安装
(1)软件包重复安装将会失败,若仍需要安装必须加--replacepkgs 选项
2)文件冲突
(1)软件包的某一个文件在已在安装其他软件包时安装过,则安装将会失败,若仍需要安装必须加 --replacefiles 选项
3)依赖关系
(1)如果软件包依赖于其他软件包,如果用户想要强制安装需要--nodeps选项
7,RPM验证
1)rpm -V software
验证已安装软件
安装时被依赖的包先安装
卸载时被依赖的包最后卸载
三,YUM
1,YUM的概述
用来解决软件包之间的依赖关系
1)自动解决依赖关系
2)引入仓库概念,会自动在仓库中查询依赖关系
2,YUM仓库
1)保存管理YUM包