linux软件包分为:源码包和二进制包
1、什么是源码包?
源码包能够直接看到源码,安装时需要人为手工设置安装位置,一般是/usr/local/软件名称
源码包的升级版---脚本安装包,人为的改动源码使其有安装界面。
优点:开源,如果有足够的能力,可以直接修改源代码。
卸载方便,直接删掉你安装软件的哪个目录就行了
软件是编译安装的,所以更适合自己的系统,更加稳定
缺点:安装步骤较多,尤其是安装较大的软件集合时,容易出现拼写错误
编译时间过长,比后面的二进制包安装时间长
因为是编译安装,安装过程中出现错误新手很难解决。
2、什么是二进制包?
这里的二进制包,主要是rpm包,而源码包一般指tar包
rpm包有默认的安装位置,
/etc/配置文件安装目录
/usr/bin 可执行的目录安装目录
/usr/lib 程序所使用的函数库保存位置
/usr/share/doc 基本的软件使用手册保存位置
/usr/share/man/帮助文件保存位置
优点:包管理系统简单,只通过几个命令就可以实现包的安装、升级、查询和卸载
安装速度快
缺点:已经编译过了,看不到源码,安装过程中有很多依赖的包,依赖性不好解决。
3、rpm包安装
语法:rpm -ivh 包名称
选项:-i(install) 安装
-v(verbose):显示详细信息
-h(hash) :显示进度
--nodeps:不检测依赖性
如安装centos下的httpd-2.2.15-53.el6.centos.x86_64.rpm为例
我们进入到该rpm文件的挂载目录/mnt/cdrom/Packages,执行命令:rpm -ivh httpd-2.2.15-53.el6.centos.x86_64.rpm
注:这种安装方法可能需要先安装各种依赖,安装过程繁琐,后面是有yum安装很简单很多。
4、rpm包升级
语法:rpm -Uvh 包名称
选项:-U(upgrade)升级
5、rpm包卸载
语法:rpm -e 包名称
选项:-e(erase) 卸载
--nodeps 不检查依赖性
6、查询rpm包是否安装
语法:rpm -q 包名称
选项:-q (query) 查询
rpm -qa:查询所有
-a(all) 所有
7、查询软件包的详细信息
语法:rpm -qi 包名称
选项:-i 查询软件信息(information)
-p 查询未安装包信息(package)
8、查询软件包的安装位置
语法:rpm -ql 包名称
选项:-l 列表(list)
-p 查询未安装包信息
9、查询系统文件属于哪个rpm包
语法:rpm -qf 系统文件名
选项:-f 查询系统文件属于哪个软件包file
10、查询软件包的依赖性
语法:rpm -qR 包名称
选项:-R 查询软件包的依赖性(requires)
-p 查询未安装包的信息
注:使用rpm安装是痛不欲生的,因为安装一个rpm软件包,可能需要先安装某个依赖的rpm包,而安装这个依赖的rpm包又可能需要安装这个依赖的rpm包的依赖包,所以相当复杂.实际中,一般采用yum在线管理