笔记内容:

7.6 yum更换国内源

7.7 yum下载rpm

7.8/7.9 源码包安装

笔记日期:2017.8.10


7.6 yum更换国内源

yum更换国内源,yum下载rpm包,源码包 安装_第1张图片


CentOS自带yum仓库源网址是国外的网址,所以从国内下载国外网址的rpm包有时候会很慢或者无法下载,这时可以更换国内的yum仓库源来解决这个问题。

  1.删除yum.repos.d目录下的CentOS-Base.repo文件

wKiom1niPaKxv5WnAAGpbwZMhSc966.png



2.使用curl命令或使用wget命令下载163的源,因为上一步我把CentOS-Base.repo文件给删掉了,所以只能使用curl命令:

命令如下:

curl -O http://mirrors.163.com/.help/CentOS7-Base-163.repo

wKioL1niOuyDdcP8AAKcSWI_QpE384.png


3.查看yum.repos.d目录下是否有CentOS7-Base-163.repo文件:

wKiom1niPaLiOd3dAAE4Fcu1fOs226.png

yum更换国内源,yum下载rpm包,源码包 安装_第2张图片


4.最后可以使用yum list查看一下可用的rpm包。



安装wget命令:

wKiom1niPamy_Im1AAG7Y2eG3BM211.png




7.7 yum下载rpm

yum更换国内源,yum下载rpm包,源码包 安装_第3张图片

因为仅有一个163的基础yum源,所以可能会有一些rpm包是仓库里没有的,需要安装扩展源来下载一些仓库里没有的rpm包。

  1.安装epel

wKioL1niOxGxn-GAAAIwxinhes4347.png


2.查看yum.repos.d目录会发下载了两个epel开头的文件:

wKiom1niPcjB0jyoAAJ5lF3XVg0185.png


3.使用yum list列出可用的rpm包,会发现包增加了很多:

wKiom1niPcmCFCwCAALZABf3bvs928.png

yum更换国内源,yum下载rpm包,源码包 安装_第4张图片


可以使用grep过滤一下看得比较直观:

wKioL1niOxeScUdrAACwmTCu_N4368.png

yum更换国内源,yum下载rpm包,源码包 安装_第5张图片



yum更换国内源,yum下载rpm包,源码包 安装_第6张图片


因为本地yum仓库的rpm包有限,所以有很多rpm包需要在网络上下载。但是我希望把rpm包下载到本地,下一次再使用就不需要到网络上下载了,所以我们需要用yum下载rpm包到本地。

     下载rpm包时要确保这个包没有下载过,不然系统就会提示已经下载过了。

    1.下载示例:

yum更换国内源,yum下载rpm包,源码包 安装_第7张图片


2.查看存放rpm包的路径:

ls /var/cache/yum/x86_64/7/updates/packages/

wKioL1niO0PiXfIYAAKk_seBGzY785.png


下载rpm包时可以通过--downloaddir指定rpm的存放路径,例如我放在tmp目录下:

yum install zsh --downloadonly --downloaddir=/tmp/

wKiom1niPfrBlcupAAJ5lMdgvtI269.png

wKioL1niO0ThURJ6AAI0NGP7nio152.png


如果要下载的rpm包已经安装了,会出现以下提示:

wKiom1niPfySebU4AAM4bLuMc6o853.png


如果需要下载已经安装了的rpm包可以使用reinstall命令:

yum reinstall vim-enhanced --downloadonly --downloaddir=/tmp/

yum更换国内源,yum下载rpm包,源码包 安装_第8张图片

wKiom1niPf_hX-YCAAHuzzE1mFU934.png




7.8/7.9 源码包安装

yum更换国内源,yum下载rpm包,源码包 安装_第9张图片

源码包最好放到/usr/local/src/路径下,方便查找、方便使用这个操作系统的其他人。

使用wget下载Apache

可以到以下网址获得Apache源码包下载链接:

  r.aminglinux.com

yum更换国内源,yum下载rpm包,源码包 安装_第10张图片

wKiom1niPjChCHdfAAMnGgyiQUw159.png

wKioL1niO3qyekdFAADe3_lXH8U438.png


解压下载好的源码包:

wKioL1niO3rDlaO_AAD0D1BRQko623.png


列出源码包下的内容:

wKiom1niPjCg3CHgAAKToJGimOU919.png

大写名称的都是官方文档,INSTALL文档里有介绍如何安装源码包。

yum更换国内源,yum下载rpm包,源码包 安装_第11张图片


关于echo $?命令

如果你执行一条命令,而且这个命令会输出很多信息,例如安装源码包时使用的那些命令。因为输出的信息太多,有时候命令执行完了并不能确定是否执行成功了,这时候就可以使用echo $?命令查看上一条令是否是正确的,结果是1就是执行失败0则是执行成功



安装gcc编译器:

wKioL1niO32xSIKPAAEZNy94RKw900.png


然后就可以进行编译了,但是我这编译出了问题,缺少APR包:

yum更换国内源,yum下载rpm包,源码包 安装_第12张图片


所以我需要先下载这些apr包:

在以下链接可以找到这些包的下载地址:

http://archive.apache.org/dist/apr/ 

 

下载apr-1.5.2.tar.gz包:

wget http://archive.apache.org/dist/apr/apr-1.5.2.tar.gz

yum更换国内源,yum下载rpm包,源码包 安装_第13张图片


解压apr-1.5.2.tar.gz包:

wKiom1niPj3wJ6xwAAIb5lWhHUA311.png


编译:

1../configure --prefix=/usr/local/apr/

wKioL1niO4iyWF4BAAITqFbvdiw899.png

2.[root@localhost apr-1.5.2]# make

3.[root@localhost apr-1.5.2]# make install




完成上面操作就继续编译Apache,这一步需要指定apr包的安装目录,因为我们是自定义安装的:

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

wKiom1niPj6y2pR0AAEnU9wWOTk475.png


继续编译发现还是缺少一个包:

yum更换国内源,yum下载rpm包,源码包 安装_第14张图片



再去刚刚那个网址找这个包的下载链接:

http://archive.apache.org/dist/apr/apr-util-1.6.0.tar.gz

下载apr-util-1.6.0.tar.gz包:

wget http://archive.apache.org/dist/apr/apr-util-1.6.0.tar.gz

yum更换国内源,yum下载rpm包,源码包 安装_第15张图片


解压apr-util-1.6.0.tar.gz包:

[root@localhost src]# tar -xvzf apr-util-1.6.0.tar.gz



编译:

wKioL1niPF_jDEBOAAD76XugJB4297.png

wKioL1niPF_DPaEvAABjpVohDbM717.png

wKiom1niPxWhlsOXAACCzbaYab8224.png



完成上面操作就再次编译Apache,这一步不仅需要指定apr包的安装目录,还要指定apr-util包的安装目录,因为我们都是自定义安装的:

./configure --prefix=/usr/local/apache2/ --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/

wKiom1niPxXyJVwSAAC_MliEAEk013.png



然后发现依旧报错,缺少PRCE,对此我有句MMP不知道当不当讲,编译Apache。。。这真是个so eggache的过程:

wKioL1niPGCSpMXeAAL7sBgGbkY847.png


到以下网址找PCRE下载链接:

 http://jaist.dl.sourceforge.net/project/pcre/pcre/ 

 

获得下载链接

https://nchc.dl.sourceforge.net/project/pcre/pcre/8.41/pcre-8.41.tar.gz

 

下载PCRE

wKioL1niPGHQGLUjAADqlw9gF04301.png


解压PCRE

wKiom1niP07Sh_vMAADCNc4w0CI076.png


  在编译之前先在yum可用安装组里下载安装Development Tools因为这玩意需要C++来编译:

wKioL1niPJjTHNrYAAC9ZGmBDkI867.png


安装完之后倒回去编译PCRE

wKioL1niPJjwnsuhAAE_IGiITA4857.png

wKiom1niP0-jhD9cAAB0OIWR7tQ333.png

wKioL1niPJnivKfKAACLbCBeIMk622.png



现在继续倒回去编译Apache,这次得加上pcre的安装路径,如果还报错我就不玩了:

wKiom1niP0_CJK7LAADhhtpOVd0979.png

wKiom1niP0_DzpaQAAB5UqFsX-s843.png

wKioL1niPKyRORoQAAC2fhWJWcg507.png


终于编译成功没有报错,甚感欣喜之余,需要最后测试一下apache

yum更换国内源,yum下载rpm包,源码包 安装_第16张图片

  启动服务后出现这个信息的话,需要编辑apacheconf目录下的httpd.conf文件,将里面的#ServerName www.example.com:80位之下添加ServerName localhost:80

wKiom1niP2PwwydrAAIRhFWHLdg691.png

wKiom1niP2SyBrQPAAG41UaLbLU987.png

yum更换国内源,yum下载rpm包,源码包 安装_第17张图片


然后重启服务:

wKioL1niPLSwDvfeAALORyNTrRo206.png


如果有安装lynx浏览器可以用以下命令访问apache的网页:

wKiom1niP2rRZ5eGAACNOzMtOrE278.png

yum更换国内源,yum下载rpm包,源码包 安装_第18张图片


打完收工!到此为止apache就安装完成了。

 



扩展

1. 配置yum源优先级  

http://ask.apelearn.com/question/7168

 

2. 把源码包打包成rpm包  

 http://www.linuxidc.com/Linux/2012-09/70096.html