6月27日任务

7.6 yum更换国内源
7.7 yum下载rpm包
7.8/7.9 源码包安装
扩展
1. 把源码包打包成rpm包 https://jin-yang.github.io/post/linux-create-rpm-package.html



yum更换国内源

26期20180627 更换国内源 yum下载rpm包 源码包安装


所谓更改国内源就是把安装的地址换成国内的服务器。做法就是更换CentOS7-Base文件为163的文件。

26期20180627 更换国内源 yum下载rpm包 源码包安装

打开可以看到实际上是把原先的源地址给注释掉了,

然后使用的是163的地址。


26期20180627 更换国内源 yum下载rpm包 源码包安装

所谓安装扩展源就是基础源base不够用的时候安装的一些额外的包的来源

26期20180627 更换国内源 yum下载rpm包 源码包安装

安装完之后就会看到目录下的文件变多了

26期20180627 更换国内源 yum下载rpm包 源码包安装

可以看到,实际上这个源是fedora的源

26期20180627 更换国内源 yum下载rpm包 源码包安装

26期20180627 更换国内源 yum下载rpm包 源码包安装


yum下载rpm包

26期20180627 更换国内源 yum下载rpm包 源码包安装

可以使用yum -y 包名 --downloadonly 来下载

默认位置是

/var/cache/yum/x86-64/7/updates/packages

如下载的包已经被安装过了则会提示nothing to do

26期20180627 更换国内源 yum下载rpm包 源码包安装

26期20180627 更换国内源 yum下载rpm包 源码包安装

当然可以修改下载的地址

使用 --downloaddir选项


yum install -y 包名 --downloadonly --downloaddir=/tmp/ 

26期20180627 更换国内源 yum下载rpm包 源码包安装


如果想重新下载的话,可以使用 yum reinstall --downloadonly 



源码包的安装

26期20180627 更换国内源 yum下载rpm包 源码包安装

首先确定一个固定的下载源码文件的地址

cd /usr/local/src


然后用wget 下载文件包

26期20180627 更换国内源 yum下载rpm包 源码包安装

然后解压之后到解压后的文件夹去看看 gunzip 解压  tar xvf 解包

26期20180627 更换国内源 yum下载rpm包 源码包安装

README通常是用作介绍软件的用途

而INSTALL一般是介绍如何安装

26期20180627 更换国内源 yum下载rpm包 源码包安装

按照上面流程直接进行安装就可以,一步一步往下,但是深究一下可以使用--help看看都有哪些东西

26期20180627 更换国内源 yum下载rpm包 源码包安装

直接安装,但是出现了error。这里有一个小的命令技巧就是 echo $? 如果前一条执行的没有问题则会显示为0,否则就有错。

26期20180627 更换国内源 yum下载rpm包 源码包安装

26期20180627 更换国内源 yum下载rpm包 源码包安装

这个地方需要特别说一下。我安装的时候依次出现了以下错误:

apr。。。no apr是apache portable runtime library 这个按照官方说法是这样的

26期20180627 更换国内源 yum下载rpm包 源码包安装

于是我就找到了源码包下载下来,并修改名字后放到了srclib目录下,并运行./configure --prefix=/usr/local/apache2 

然后出现了若干错误,最下面是错误的解决方案。反正都解决了

然后是make,make 了很久

最后make install 最后没问题,每一步都要用 echo $? 来进行检查确定都是0才行

26期20180627 更换国内源 yum下载rpm包 源码包安装


在编译的过程中又先后出现了错误,比如pre包,安装yum install pcre pcre-devel

gcc报错  yum install gcc

expat.h 报错 yum install expat expat-devel 

最后这个错误确实搞了很久

collect2: ld returned 1 exit status make[2]: *** [htpasswd] խϳ 1 make[2]: Leaving directory `/usr/local/src/httpd-2.4.26/support' 

make[1]: *** [all-recursive] խϳ 1 make[1]: Leaving directory `/usr/local/src/httpd-2.4.26/support' make: *** [all-recursive] խϳ 1 

最后是把apr apr-util重新下载了1.5版本后重新编译后才成功。

(错误可以借鉴 https://blog.51cto.com/xtony/836508)


overall

./configure --prefix=路径是确定安装路径


make是编译


make install 把编译完成的二进制以及其他的配置文件等放入prefix指定目录