Linux系统管理6:软件包安装

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 系统文件名

发布了106 篇原创文章 · 获赞 21 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/jiangSummer/article/details/105221113