linux下一般有两种包,一种叫源码包,另一种叫二进制包。

源码包是未编译过的包,编译后可以运行于任何平台,可定制。一般以  .sr c.rpm 结尾。

二进制包是已编译过的包,只适用于某种平台。后缀一般没有 .src,只有 .rpm结尾。


linux下的主流下安装方法:

一种是rpmRed Hat Package Manager)安装,需要解决依赖关系。

一种是dpkgDebian Package),这个也需要解决依赖关系。

另外还有yum安装,会自动安装依赖包。


其中rpm是适合在centos或者Red Hat系统下使用的,

     dpkg是在适合在Ubuntu和debian使用的。


rpm可以安装、删除、升级和管理以rpm包形式发布的软件,也可以查询rpm包中包含哪些文件

 

rpm   -q a    (query) 查询(all)所有

rpm   -U        更新                   #大写U

rpm   -e        表示卸载

rpm   -i         安装指定的套件档

rpm   -v        显示指令的执行过程

rpm   -c        显示文件的配置文件

rpm   -R       查询拥有指定文件的依赖包


比较常用的有以下情况:

安装   rpm -ivh package.rpm

更新   rpm -Uvh new-package.rpm

卸载   rpm -e old-package                    #不可以带.rpm,否则会失败

强制升降级   rpm -fvh package     本来有这个软件,直接安装现在这个包,

                                            没有这个软件则软件包不会安装,一般用来降级。

查看文件属于哪个包    rpm -qf package



>>>YUM安装:在yum源允许的情况下,可以用一条命令直接下载,检查、解决依赖并安装。

其本质是yum在yum源下载rpm包自动检测依赖关系自行解决依赖关系并安装,所以很多时候你安装一个包,看到的却是多个安装过程。

因此卸载软件---  rpm -e old-package 和 yum remove old-package 是通用的。


yum  -y package           安装软件过程中, 自动回应yes,不用操作

yum  search package     到源里自动搜索包并列出

yum  list |more              列出所有可以安装的包,enter查看下一列

yum  clean  all               清除本地yum清单

yum repolist all              列出本地所有yum源


>>>yum涉及到yum源的问题,有时候用yum下载软件下载不到,那就是yum源的问题。

       yum源一般都在/etc/yum.repos.d/目录下,以.repo作为后缀结尾,其内容一般有:

yum源:

[root@localhost yum.repos.d]# cat nginx.repo

[nginx]

name=nginx.org                                                                                                   #名字,随意

baseurl=http://nginx.org/packages/centos/$releasever/$basearch/                   #源,地址

enable=1                                                                                                                 #

gpgcheck=0                                                                                                             # 指定是否需要查询RPM文件内的数码印章



[centos@localhost yum.repos.d]$ cat nginx.repo 

[nginx]

name=nginx.o

baseurl=http://nginx.org/packages/centos/$releasever/$basearch/

enable=1

gpgcheck=1

gpgkey=http://nginx.org/packages/keys/nginx_signing.key