学习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是什么了吧。