10Linux软件包管理之源码包安装

  • 1、源码包和RPM包的区别
  • 2、源码包安装
  • 3、源码包卸载
  • 4、脚本安装包

1、源码包和RPM包的区别

源码包开源,如果有足够的能力,可以直接修改源代码。安装时可以自由选择所需的功能。软件是编译安装,所以更加适合自己的系统,更加稳定也效率更高。卸载方便,直接删了你安装软件的那个目录就好了。但是安装步骤较多,尤其安装较大的软件集合时,容易出现拼写错误。编译时间过长,比后面讲的二进制安装时间长。因为是编译安装,安装过程中一旦报错新手很难解决。

rpm包包管理系统简单,只通过几个命令就可以实现包的安装、升级、查询和卸载。安装速度比源码包快很多。但是由于源码已经经过编译了,看不到源代码。功能选择不如源代码包灵活。安装过程中有很多依赖的包,依赖性不好解决。

这里由于安装位置的不同,安装之后会带来一些很明显的区别。

  RPM包和源码包默认安装位置:

RPM包默认安装位置:

rpm包也能手工更改安装位置,但是更改位置之后会造成一些影响,下面我们会详细讲解。

源码包安装位置:

/usr/local/软件名/

  由于安装位置不同带来的影响

①、rpm包安装的服务可以使用系统服务管理命令(service)来管理。

比如 rpm 包安装的apache 的启动方法是:

①、/etc/rc.d/init.d/httpd start
②、service httpd start

第二种命令是第一种命令的简化形式。这是红帽专有命令。service 会去 rpm 包默认的安装位置去找可执行文件,所以service类似的启动服务管理命令只能管理rpm安装包。如果更改了rpm包的默认安装位置,可能造成通过service启动服务失败。

Linux要启动一个执行文件,都应该是用绝对路径来启动,后面讲的配置好环境变量之后能直接通过文件名来启动,其实原理也是通过环境变量找到的绝对路径。而 /etc/rc.d/init.d/ 目录是所有rpm包安装的服务执行文件存放目录。

提示:绿色的都是可执行文件。

②、源码包启动服务

由于源码包没有安装到指定的路径中,所以源码包安装的服务不能被类似service服务管理命令管理,这里就只能通过绝对路径的形式来启动了。

/usr/local/apache2/bin/apachectl start

2、源码包安装

  ①、安装准备

一、首先在Linux系统安装gcc编译器

二、下载源码包

我们以 httpd 为例,下载地址:http://mirror.bit.edu.cn/apache/httpd/

  ②、安装注意事项

一、源代码建议保存位置:/usr/local/src

二、软件安装位置:/usr/local

三、如何确定安装过程报错:安装过程停止,并出现error、warning或no的提示。注意源码包安装过程一旦报错是很难解决的,需要我们去修改源码。所以从正规网站上下载别人验证过的源码包,一般是不会报错的。

  ③、安装源码包

我们将下载好的源码包通过工具复制到Linux系统中,然后解压,最后进入到解压目录,因为后面很多命令都需要在解压之后的目录中操作。

这里我们可以查看INSTALL 文件,查看安装说明:

第一步:软件配置与检查 ./configure

①、定义需要的功能选项。

②、检测系统是否符合安装要求。

③、把定义好的功能选项和检测系统环境的信息都写入Makefile 文件,用于后续的编辑

./configure --prefix=/usr/local/apache2

通过 -- prefix 定义源码包安装位置,后面的apache2(由于我们通过yum已经安装了apache,所以这里命名为apache2)可以任意命名。

执行完成如果没有出现报错信息,则准备工作完成。

第二步:执行编译 make ,将源码包编译为机器码

这一步安装的时长取决于源码包的大小以及机器的性能。如果安装出错,可以执行 make clean,清空产生的所有临时文件。

注意:这一步执行完成之后并不会在 /usr/local 下生成 apache2目录。但是在httpd源码包解压目录生成了Makefile 文件

第三步:执行 make install ,编译安装

第四步:安装完成之后,启动该服务

我们通过查看源码包解压之后的目录 INSTALL 文件,可以知道启动命令:

/usr/local/apache2/bin/apachectl start

启动发现报如下错误:这是 80 端口被占用了。因为我们用 yum 安装过rpm包的httpd,这里停掉 rpm包的httpd就好了。

3、源码包卸载

源码包不需要额外的卸载命令,直接删除安装目录即可,不会有任何的垃圾文件遗留。

这里就可以看出为啥Linux系统运行很长的时间都比较稳定,而windows系统运行一段时间就会比较卡。这是因为Linux系统安装的软件卸载干净,而windows怎么卸载都会存在一定的垃圾文件。

4、脚本安装包

这里首先要给大家说明,Linux系统从本质上讲只有rpm包和源码包,是没有脚本安装包的。这里说脚本安装包,其实根本上就是源码包。上面刚刚讲了源码包的安装方法,发现还是比较麻烦的。为了简化源码包的安装,人为的修改源码包,使其变成自动安装的脚本,我们只需要执行脚本定义简单的参数就能完成安装。具体解释如下:

①、脚本安装包并不是独立的软件包类型,基本上都是源码包。

②、脚本安装包是人为的把安装过程写成了自动安装的脚本,只要执行脚本,定义简单的参数,就可以完成安装。

③、脚本安装包类似于windows下软件的安装方式。

这里以 Webim 的安装为例来介绍如何安装脚本安装包:

Webim 是一个基于 Web 的Linux 系统管理界面,安装完成之后,就可以通过图形化的方式来设置用户账户、DNS、文件共享等服务。

第一步:下载 Webim 脚本安装包

下载地址:http://sourceforge.net/projects/webadmin/files/webmin

第二步:将下载的文件通过工具复制到Linux系统中,并解压

第三步:进入到解压之后的目录,并执行里面的脚本安装文件 ./setup.sh

出现如下界面安装成功:

安装完成之后,我们输入 虚拟机的ip地址:20000,后面的端口号20000根据你安装实际情况来,进入到 Webim 操作界面

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 201,784评论 5 474
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,745评论 2 378
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 148,702评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,229评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,245评论 5 363
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,376评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,798评论 3 393
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,471评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,655评论 1 295
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,485评论 2 318
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,535评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,235评论 3 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,793评论 3 304
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,863评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,096评论 1 258
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,654评论 2 348
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,233评论 2 341