包管理及源码安装Apache

一,概述

yum 仓库的安装

在/etc/yum.repos.d/目录下创建后缀名为repo的配置文件

[CentOS7]

name=

baseurl=

gpgcheck=

enabled=

配置文件基本包含的四个要求

blob.png

安装及升级本地程序包:

* localinstall rpmfile1 [rpmfile2] […]

(用install替代)

* localupdate rpmfile1 [rpmfile2] […]

(用update替代)

例:

blob.png

升级

blob.png

包组管理的相关命令:

groupinstall group1 [group2] […]

groupupdate group1 [group2] […]

grouplist [hidden] [groupwildcard] […]

groupremove group1 [group2] […]

groupinfo group1 […]

blob.png

包组的概念就是将一些功能大概相同的放在一个组中,同时安装.方便安装

blob.png

安装开发功能的组包和安全组包

blob.png

查询组包的信息,前面带=号的代表包已安装,+号表示包没有安装,但将在下次运行版本升级,-号代表包没有安装,并不会安装作为组的一部分

blob.png

查看隐藏的包

如何使用光盘当作本地yum仓库:

(1) 挂载光盘至某目录,例如/media/cdrom

# mount /dev/cdrom /media/cdrom

(2) 创建配置文件

[CentOS7]

name=

baseurl=

gpgcheck=

enabled=

blob.png

先创建一个目录,将光盘挂载到这个目录下.

blob.png

在在配置文件中增加这个选项

blob.png

这样就有这个yum仓库了

程序包编译

程序包编译安装:

Application-VERSION-release.src.rpm –> 安装后,使

用rpmbuild命令制作成二进制格式的rpm包,而后再安装

源代码–>预处理–>编译(gcc)–>汇编–>链接–>执行

源代码组织格式:

多文件:文件中的代码之间,很可能存在跨文件依赖关系

C、C++:make (项目管理器,configure –>

Makefile.in –> makefile)

java: maven

C代码编译安装三步骤:

1、./configure:

(1) 通过选项传递参数,指定启用特性、安装路径等;执

行时会参考用户的指定以及makefile.in文件生成makefile

(2) 检查依赖到的外部环境

2、make:根据makefile文件,构建应用程序

3、make install:复制文件到相应路径

开发工具:

autoconf: 生成configure脚本

automake:生成Makefile.in

注意:安装前查看INSTALL,README

开源程序源代码的获取:

官方自建站点:

apache.org (ASF)

mariadb.org

代码托管:

SourceForge.net

Github.com

code.google.com

c/c++编译器: gcc (GNU C Complier)

编译C源代码:

前提:提供开发工具及开发环境

开发工具:make, gcc等

开发环境:开发库,头文件

glibc:标准库

通过“包组”提供开发组件

CentOS 6: "Development Tools",

"Server Platform Development",

blob.png

blob.png

第三步就进行make操作

blob.png

第四步

blob.png

第五步进入安装的目录将服务启动

二.作业及练习题

1.删除rpm命令的恢复方法

blob.png

忽略依赖性删除命令rpm

blob.png

选择第三个光盘

blob.png选择第三个

blob.png

在选择第二个救援模式

blob.png

选择1

blob.png

进来之后默认的根目录不是硬盘中的根目录

blob.png

直接安装光盘中的rpm包

blob.png记住要指定根目录到硬盘中的根目录

blob.png

在进入系统,rpm已经安装上

2.创建一个本地的yum仓库

拿tree一个文件做测试

blob.png

先将这个文件拷贝到一个目录下

blob.png

然后在当前目录下运行这个命令来创建yum仓库

blob.png

blob.png

blob.png

然后就能使用这个仓库来安装应用程序了

3.源码安装apache

1)下载源码包

2)解压压缩包,我们就可以看到里面的文件

blob.png

现在就是正式安装的过程

1、./configure:

(1) 通过选项传递参数,指定启用特性、安装路径等;执行时会参考用户的指定以及makefile.in文件生成makefile

(2) 检查依赖到的外部环境

blob.png

2、make:根据makefile文件,构建应用程序

blob.png

make install:复制文件到相应路径

blob.png

blob.png

安装后的配置:

(1) 二进制程序目录导入至PATH环境变量中;

编辑文件/etc/profile.d/NAME.sh

export PATH=/PATH/TO/BIN:$PATH

(2) 导入库文件路径

编辑/etc/ld.so.conf.d/NAME.conf

添加新的库文件所在目录至此文件中;

让系统重新生成缓存:

ldconfig[-v]

blob.pngblob.png

blob.png

(3) 导入头文件

基于链接的方式实现:

ln -sv

导入帮助手册

编辑/etc/man.config|man_db.conf文件

添加一个MANPATH

blob.png

启动服务

blob.png

原创文章,作者:Kartik,如若转载,请注明出处:http://www.178linux.com/42805

(0)
KartikKartik
上一篇 2016-09-01
下一篇 2016-09-02

相关推荐

  • thinkpad e420编译安装thinkfan控制风扇

    我的笔记本是win7+linuxmint双系统,在进入linuxmint长时间运行后会明显感觉发热,我发现笔记本风扇的转数过低,导致热量不能发散出去,解决方法就是安装thinkfan风扇控制软件。 1、下载软件包 https://sourceforge.net/projects/thinkfan/ 最新版本是1.0beta2 2、编译安装 编译前确保安装过c…

    Linux干货 2017-03-09
  • 搭建SSH服务器

    Linux 远程登录服务:sshSSH是标准的网络协议,可用于大多数UNIX操作系统,能够实现字符界面的远程登录管理,它默认使用22号端口,采用密文的形式在网络中传输数据,相对于通过明文传输的Telnet,具有更高的安全性。SSH提供了口令和密钥两种用户验证方式,这两者都是通过密文传输数据的。不同的是,口令用户验证方式传输的是用户的账户名和密码,这要求输入的…

    Linux干货 2017-07-24
  • 马哥教育网络班22期+第12周课程练习

    1、请描述一次完整的http请求处理过程; 1. 建立或处理连接:接收请求或拒绝请求; 2. 接收请求:接收来自于网络上的主机请求报文中对某特定资源的一次请求的过程; 3. 处理请求:对请求报文进行解析,获取客户端请求的资源及请求方法等相关信息; 4. 访问资源:获取请求报文中请求的资源; 5. 构建响应报文…

    Linux干货 2016-11-28
  • customer service in logistics management 7

    Meet Elizabeth Project manager Customer Service & Logistics Center of Excellence Customer Relationship Management team launches modern service tool via ServiceNow > Defense …

    Linux干货 4天前
  • redis主/从配置及基于sentinel的故障转移

    一、NoSQL基础概念: ACID:原子性、一致性、隔离性、持久性;特性:数据量大、数据变化非常大(数据增长化、流量分布变化、数据间耦合结构变化)、数据源很多; CAP、BASECAP C:多个数据节点的的数据一致;A:用户发出请求后的有限时间范围内返回结果;P:network partition,网络发生分区后,服务是否依可用;CAP理论:一个分布式系统不…

    Linux干货 2017-01-27
  • TCP/IP

    TCP/IP协议族     互联网协议族(英语:Internet Protocol Suite,缩写IPS)是一个网络通信模型,以及一整个网络传输协议家族,为互联网的基础通信架构。它常被通称为TCP/IP协议族(英语:TCP/IP Protocol Suite,或TCP/IP Protocols),简称TCP/IP。因为该协议家…

    Linux干货 2017-06-26