软件包安装
1.软件包分类
- 源码包
- 二进制包
2.源码包
2.1 源码包的优点
- 开源,如果有足够的能力,可以修改源码包
- 可以自由选择所需功能
- 软件是编译安装,所以更加适合自己的系统,更加稳定也效率更高
- 卸载方便
2.2 源码包的缺点
- 安装过程中步骤较多,尤其安装较大的软件集合时(如LAMP环境搭建),同一出现拼写错误
- 编译过程时间较长,安装比二进制安装时间长
- 因为是编译安装,安装过程中一旦报错新手很难解决
3、二进制包
3.1 二进制包分类
DPKG包:可以进行软件包管理,主要应用在Debian和ubuntu中,用于对软件的安装、更新和卸载。对应的文件扩展名为deb。Ubuntu发行版主要以dpkg机制管理软件。
RPM包:类似于Windows中的“添加/删除程序”。rpm软件以rpm为扩展名。同时rpm也是一种软件管理器,通过rpm包管理机制对软件进行安装、更新和卸载。centos、suse、Fedora主要为rpm包管理机制。
3.2 特点
RPM包优点:
- 包管理系统比较简单,止痛膏几个命令就可以实现包的安装、升级、查询和卸载
- 安装速度比源码包安装快的多
RPM包缺点:
- 功能选择不如源码包灵活
- 经过编译,不在可以看到源代码
- 依赖性,优势会发现需要俺咋混个软件包a,时需安装b和c。
3.3 RPM包依赖
树形依赖:a->b->c
环形依赖:a->b->c->a
模块依赖:查找模块的网站:www.rpmfind.net
因为安装包会产生许多依赖,导致错误,一般使用yum进行安装。
4.rpm安装
4.1 rpm包命名规则
httpd-2.2.15-15.e16.centod.1.i686.rpm
- httpd:软件包名
- 2.2.15:软件版本
- 15:软件发布的次数
- e16:软件发行商,
- i687:适合的硬件平台。硬件平台包括了:i386、i486、i586、i686、x86_64、ppc、sparc、alpha和noarch。
- rpm:rpm包的扩展名
包全名:如果操作的是未安装的软件包,则使用包全名,并且需要注意绝对路径。
包名:如果操作的是已经安装的软件包,则是由包名即可,系统会生成rpm包的数据库。(/vat/lib/rpm/),而且可以在任意路径下操作
4.2 rpm包手工命令安装
4.2.1 默认安装位置
路径 | 解释 |
---|---|
/etc/ | 配置文件安装目录 |
/usr/bin/ | 可执行的命令安装目录 |
/usr/lib/ | 程序所使用的函数库保存位置 |
/usr/share/doc/ | 基本的软件使用手册保存位置 |
/usr/share/man/ | 帮助文件保存位置 |
4.2.2 安装命令
rpm -ivh 包全名
注意:一定是包全名,如果跟包全名的命令要注意路径,因为软件包在光盘当中
选项:
-i install安装
-v 显示更详细的信息
-h 打印#显示安装进度
–nodeps 不检测依赖性安装(不建议使用)
–replacefiles 替换文件安装
–replacepkgs 替换软件包安装
–force 强制安装
–test 测试安装
–prefix 指定安装路径(一般不推荐使用)。
//在安装前需要挂在盘符
cd /mnt/
mkdir usb
mount /dev/cdrom /mnt/usb/
cd Packages/
//尝试下载
rpm -ivh lrzsz-0.12.20-27.1.el6.x84_64.rpm
//如果下面出现两个百分百说明成功了。
4.2.3 查看软件包文件列表及文件安装路径
rpm -qpl 包全名
-q:使用询问模式,遇到任何问题,rpm指令会先询问用户
-p:查询软件包
-l : 显示软件包中的文件列表
4.2.4 rpm包升级
rpm -Uvh 包全名
-U:升级安装,如果没有安装过,系统直接安装
rpm -Pvh 包全名
-F:升级安装,如果没有安装,则不会安装
4.2.5 rpm包卸载
rpm -e 包名
-e:卸载
–nodeps 不检查安装依赖性
4.2.6 查询
1.查询软件包是否安装
rpm -q 包名
2.查询系统中的所有安装包软件
rpm -qa
也可以选用管道符来查看所需的内容
rpm -qa | grep httpd
3.查询包的详细信息
查询已安装包详细信息
rpm -qi 包名
查询未安装包的详细信息
rpm -qip 包全名
-p:查询没有安装的软件包
4.查询软件包中的文件列表
查询已安装包的文件列表
rpm -ql 包名
-l:列出软件包中所有的文件列表的软件所安装的目录
查询未安装包的文件列表
rpm -qpl 包全名
5.查询系统文件属于哪个rpm包
查询该文件夹是属于哪个rpm包的,但是手动建立的文件夹不行,必须是rpm自己创建的。
rpm -qf 系统文件名