Linux软件包安装
二进制软件包管理
A、RPM
B、YUM
RPM软件包的一个例子:
jdk-7u80-linux-x64.rpm
其中包括软件名(jdk),版本号(7u80),适用平台(linux-x64)
(1)卸载: $> rpm –e [ --nodeps ] jdk
注意:如果其他软件包有依赖关系,卸载时会产生提示 信息,
可使用 --nodeps强行卸载
(2)安装: #rpm -ivh jdk-7u80-linux-x64.rpm
(3)查询是否安装过: $>rpm -q jdk
$>rpm -qa | grep jdk
选项:
--excludedocs 不安装软件包中的文档文件
--prefix path 将软件包安装到由path指定的路径下
--test 只对安装进行测试,并不实际安装
情况1: 软件包已经被安装
$> rpm -ivh jdk-7u80-linux-x64.rpm
提示:package jdk-7u80-linux-x64.rpm is already Installed
如果想覆盖此软件包,可以在命令行上使用 --replacepkgs选项
情况2: 文件冲突
#rpm -ivh jdk-7u80-linux-x64.rpm
提示:conflicts with file from …. Connot be installed
如果想让rpm忽略该错误信息,可以在命令行上 使用 --replacefiles选项
情况3:未解决依赖关系
rpm软件包可能依赖于其他软件包,在安装了特 定的软件包后才能安装该软件包。
提示:failed dependencies …. Is needed by ….
你必须安装完所依赖的软件包,才能解决这个问 题。
如果想强制安装,请使用 --nodeps选项
情况3:升级
$>rpm -Uvh jdk-7u80-linux-x64.rpm
//后面是升级的软件包名
YUM包管理
优点:
1)自动解决软件包的依赖关系
2)方便软件包升级
3)
A. 安装 yum install
B. 检测升级 yum check-update
C. 升级 yum update
D. 软件包查询 yum list
E. 软件包信息 yum info
F. 卸载 yum remove
G. 帮助 yum -help、 man yum
(4)查询
选项 : -a 查询所有已安装的软件包
-f 查询文件所属软件包
-p 查询软件包
-i 显示软件包信息
-l 显示软件包中的文件列表
-d 显示被标注为文档的文件列表
-c 显示被标注为配置文件的文件列表
rpm查询应用案例
查询文件隶属的软件包:rpm –qf
查询软件包信息: rpm –qi、rpm –qip
查询软件包安装文件: rpm -ql、rpm –qlp
查询软件包帮助文件: rpm –qd
查询软件包配置文件: rpm -qc
软件包文件提取
解压所有文件到当前目录 Rpm2cpio 软件包 | rpio -idv
解压制定文件到当前目录 Rpm2cpio 软件包 | cpio –idv ./etc/inittab