LINUX总结第1篇:、Tarball、RPM、SRPM、RPM包、YUM、DPKG

    学习LINUX,怎么能不学习怎么在LINUX上安装、卸载软件呢?

 

    相信windowS下的安装软件、卸载软件的过程,大家都知道了。找到应用软件,双击,按照步骤一步步来就可以了。卸载呢?360\QQ管家又或者是windows自带的卸载程序的功能等,都可以,灰常的方便,简洁。

 

     LINUX下,自然也有它自己的一套机制,而在安装之前,就必须要先搞定上面的这几个概念了。否则,就算你会了,也是朦朦胧胧的,长时间不用也就忘记了。

 

一.Tarball

 

1.概念:

    tarball是linux下最方便的打包工具,是以tar这个指令来打包与压缩的档案。所谓Tarball文件,其实就是将软件的所有源码文件以tar打包,再用压缩技术来压缩。

 

2.详解:

tarball文件,用来将文件的数量和容量减少,让用户下载容易,也让软件开发商的网站带宽也能够节省许多。换句话说,你写了个不错的软件,你朋友想拿来看看。你虽然心里很不爽,但也不得不给。怎么给呢?当然可以直接发给他,但是这样子可能你写的软件比较大,拷贝浪费时间,所以讲源码打包、压缩,再给他,方便不是么。

 

 

3.缺点:

但是,这样子仍然很麻烦,因为你从网上下载了tarball之后,还要自己解压、编译、安装,超费事。当然,还有另外一种方法,商家提前将软件编译好,再把编译好的给你,不就OK了?相当于,商家替你完成了编译的步骤,你只要下载下来,然后安装,就OK了。(这样子,就有点类似于windows下的安装过程,因为你拿到的就是可执行文件,)

 

二.其他几个概念的简介

OK,首先来模仿一下windows的软件的安装过程,然后顺带着讲解他们的关系。

魔兽世界,记得从80级之后,安装文件大约有几十个G了吧,那么用电脑下载好麻烦,还是从网上买张光盘吧。

1).买张光盘,用光盘安装。

    这个光盘里放着的,就是开发商已经编译OK的软件,我们只要拿来安装就好了。那么这个光盘里的软件的管理机制,就是RPM软件管理机制,里面放的包,自然就是RPM包。

 

2).升级软件

    安装完毕,可以玩了,可是过段时间,发现魔兽世界升级了,我们自然也要升级。怎么办?重新买张光盘?不用,直接点击升级不就OK了。LINUX也是一样,他专门提供了一个命令,YUM,是一种在线升级机制,可以用来在线升级软件。

 

说到这里,大概就都清楚了吧,OK,我们再来理一遍。

1).开发商先预先将软件编译好。

2).将这个软件还有所有的相关文件打包成为一个特殊格式的文件(RPM机制的安装包也就是RPM包)

3).将这个包发布。

4).我们在网上找到了这个软件,并且想用它。

5).获取这个包,有两种方式。一个是光盘购买,一个在线下载。光盘购买用钱,现在下载通过YUM的在线升级机制。

6).安装这个软件,自然是通过RPM机制来安装。不过有时候YUM已经帮你自动用这个命令安装完成了。

 

简单吧,下面再进行一些详细的介绍。

一.RPM与RPM包

RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写,用RPM机制所打成的包为RPM包。RPM是一种对包的打包和安装工具,所以:

1)用RPM打包,生成RPM包

2)用RPM包,在你的电脑上安装RPM包的软件。

 

二.RPM和SRPM

    首先,举个例子,你现在有个软件,你用的很爽,可突然你换了操作系统,比如从XP一下跳到了WIN8,发现软件不能用了。咋办?等着呗,等待开发商将软件升级,除此之外,别无他法了(你自己NB,重新写一个也行)

 

    linux也一样,比如Red Hat释放出来的RPM文件,无法直接在SuSe上安装。可是你又想用怎么办?OK,完全可以自己解决,而不像windows那样,需要等待,将决定权交给别人。

 

    SRPM可以解决。这货是source RPM,也就是说着货也是RPM包,但是这二个RPM包里放的是源代码!当然,他比Tarball要好,因为他同时还有改软件所需要的依赖性软件说明以及所有RPM文件所提供的数据。

     然后就简单了,将该源代码用RPM管理的方式编译,被编译成为RPM文件,再重新安装就OK了。

注:一般开发商会同时释放出来RPM和SRPM。

 

下面,随便说几个命令吧:

rpm -ivh RPM包的名字       用来安装RPM包,还可以查看安装信息的画面和进度。

rpm -ivh RPM包  RPM包 RPM包......    用来同时安装多个包

rpm -Fvh   已经安装的软件,全部升级

rpm -qa   查询已经安装的软件

 

三.YUM

嗯,想了下,还是安装流程来写吧,从鸟哥的书里摘抄出来。

1.cenOS将要发布的软件放置到YUM服务器里。

2.分析这些软件的依赖属性问题,然后将这些信息做成一个清单列表。(这个列表和软件的位置较容器)

3.客户端想安装这个软件,主动向YUM服务器的容器网址下载清单列表

4.通过清单列表和自己电脑里的软件数据比较

5.发现没有安装的,立刻在线下载安装。

6.当必须的软件都下载安装完毕后,就可以安装我们实际要安装的这款软件啦。

 

所以,当客户端有升级、安装的需求时,yum会向容器要求清单的更新,然后将清单更新到本机的YUM客户端所在的文件里,然后和本机对比,下载所必须的软件,然后再通过RPM的机制安装。

 

说到这里,应该知道yum是什么了吧。

Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE、CentOS中的 Shell前端软件包管理器。基于 RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
 
理论上,我们只要能够脸上internet,就可以使用yum。因为centOS在发布软件时已经制作出多部镜像站点提供全世界的软件更新使用。
随便看几条命令吧,这个可以写细一点,话说,鸟哥的第三版比第二版多了不少内容啊,这里的例子也是从里面取的。
1.查询
yum search raid     列出与磁盘阵列相关的软件有哪些。找到之后,OK,安装吧
2.安装
yum install pam-devel  将电脑里没有的这个软件安装上吧。不需要知道软件在哪里,只要能上网,就可以了。
3.删除
yum remove pam-devel   好吧,软件卸载了,其实感觉和rpm差不多,感觉貌似没有RPM也可以,但其实YUM是在rpm上发展来的,没有rpm,yum还混个P啊。
 
四.DPKG
这个不说了,一句话,和RPM一样的道理,就是不同的公司所开发的不通管理方式而已。

 

 

 

 

你可能感兴趣的:(rpm,yum,dpkg,SRPM)