删除以前咱们设置的本地源dvd.repolinux
[root@yong-02 yum.repos.d]# rm dvd.repo rm:是否删除普通文件 "dvd.repo"?y
将以前备份的文件拷贝到yum.repos下apache
[root@yong-02 yum.repos.d]# cp -r /etc/yum.repos.d.bak/* ./ [root@yong-02 yum.repos.d]# ls CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo
CentOS-Base.repo 这个配置文件就是咱们要设置的网络源,先将它备份一下。vim
[root@yong-02 yum.repos.d]# mv CentOS-Base.repo Centos-Base.repo.bak
下载一个163的yum源,由于以前将CentOS-Base.repo重命名了,使用wget下载须要安装wget包,可是咱们这个时候yum是没办法安装wget包的,因此能够curl –O 来下载:centos
[root@yong-02 yum.repos.d]# curl -O http://mirrors.163.com/.help/CentOS7-Base-163.repo % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 1572 100 1572 0 0 7651 0 --:--:-- --:--:-- --:--:-- 7820 [root@yong-02 yum.repos.d]# ls CentOS7-Base-163.repo CentOS-fasttrack.repo CentOS-Vault.repo CentOS-CR.repo CentOS-Media.repo CentOS-Debuginfo.repo CentOS-Sources.repo
编辑看下配置文件缓存
[root@yong-02 yum.repos.d]# vim CentOS7-Base-163.repo # CentOS-Base.repo # # The mirror system uses the connecting IP address of the client and the # update status of each mirror to pick mirrors that are updated to and # geographically close to the client. You should use this for CentOS updates # unless you are manually picking other mirrors. # # If the mirrorlist= does not work for you, as a fall back you can try the # remarked out baseurl= line instead. # # [base] name=CentOS-$releasever - Base - 163.com #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os baseurl=http://mirrors.163.com/centos/$releasever/os/$basearch/ gpgcheck=1 gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7 #released updates [updates] name=CentOS-$releasever - Updates - 163.com #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates baseurl=http://mirrors.163.com/centos/$releasever/updates/$basearch/ gpgcheck=1 gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7 #additional packages that may be useful [extras] name=CentOS-$releasever - Extras - 163.com #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras baseurl=http://mirrors.163.com/centos/$releasever/extras/$basearch/ gpgcheck=1 gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7 #additional packages that extend functionality of existing packages [centosplus] name=CentOS-$releasever - Plus - 163.com baseurl=http://mirrors.163.com/centos/$releasever/centosplus/$basearch/ gpgcheck=1 enabled=0 gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7
[root@yong-02 yum.repos.d]# yum clean all 已加载插件:fastestmirror 正在清理软件源: base extras updates Cleaning up everything Maybe you want: rm -rf /var/cache/yum, to also free up space taken by orphaned data from disabled or removed repos Cleaning up list of fastest mirrors
2.yum list //生成yum缓存网络
3.安装zsh包架构
[root@yong-02 yum.repos.d]# yum install -y zsh 已加载插件:fastestmirror base | 3.6 kB 00:00:00 extras | 3.4 kB 00:00:00 updates | 3.4 kB 00:00:00 (1/4): base/7/x86_64/group_gz | 156 kB 00:00:00 (2/4): extras/7/x86_64/primary_db | 185 kB 00:00:01 (3/4): updates/7/x86_64/primary_db | 6.9 MB 00:00:04 (4/4): base/7/x86_64/primary_db | 5.7 MB 00:00:11 Determining fastest mirrors 正在解决依赖关系 --> 正在检查事务 ---> 软件包 zsh.x86_64.0.5.0.2-28.el7 将被 安装 --> 解决依赖关系完成 依赖关系解决 =================================================================================================================================================================== Package 架构 版本 源 大小 =================================================================================================================================================================== 正在安装: zsh x86_64 5.0.2-28.el7 base 2.4 M 事务概要 =================================================================================================================================================================== 安装 1 软件包 总下载量:2.4 M 安装大小:5.6 M Downloading packages: zsh-5.0.2-28.el7.x86_64.rpm | 2.4 MB 00:00:04 Running transaction check Running transaction test Transaction test succeeded Running transaction 正在安装 : zsh-5.0.2-28.el7.x86_64 1/1 验证中 : zsh-5.0.2-28.el7.x86_64 1/1 已安装: zsh.x86_64 0:5.0.2-28.el7 完毕!
[root@yong-02 yum.repos.d]# yum install -y epel-release 已加载插件:fastestmirror Loading mirror speeds from cached hostfile 正在解决依赖关系 --> 正在检查事务 ---> 软件包 epel-release.noarch.0.7-9 将被 安装 --> 解决依赖关系完成 依赖关系解决 ==================================================================================== Package 架构 版本 源 大小 ==================================================================================== 正在安装: epel-release noarch 7-9 extras 14 k 事务概要 ==================================================================================== 安装 1 软件包 总下载量:14 k 安装大小:24 k Downloading packages: epel-release-7-9.noarch.rpm | 14 kB 00:00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction 正在安装 : epel-release-7-9.noarch 1/1 验证中 : epel-release-7-9.noarch 1/1 已安装: epel-release.noarch 0:7-9 完毕! [root@yong-02 yum.repos.d]# ls CentOS7-Base-163.repo CentOS-fasttrack.repo CentOS-Vault.repo CentOS-CR.repo CentOS-Media.repo epel.repo##多出来了这个epel.repo源 CentOS-Debuginfo.repo CentOS-Sources.repo epel-testing.repo [root@yong-02 yum.repos.d]# cat epel.repo [epel] name=Extra Packages for Enterprise Linux 7 - $basearch #baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch failovermethod=priority enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 [epel-debuginfo] name=Extra Packages for Enterprise Linux 7 - $basearch - Debug #baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch/debug mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-debug-7&arch=$basearch failovermethod=priority enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 gpgcheck=1 [epel-source] name=Extra Packages for Enterprise Linux 7 - $basearch - Source #baseurl=http://download.fedoraproject.org/pub/epel/7/SRPMS mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-source-7&arch=$basearch failovermethod=priority enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 gpgcheck=1
[root@yong-02 yum.repos.d]# yum list |grep epel |tail -10 zsh-lovers.noarch 0.9.0-1.el7 epel zstd.x86_64 1.3.4-1.el7 epel zulucrypt.x86_64 5.0.1-1.el7 epel zulucrypt-console.x86_64 5.0.1-1.el7 epel zulucrypt-devel.x86_64 5.0.1-1.el7 epel zulucrypt-doc.noarch 5.0.1-1.el7 epel zulucrypt-libs.x86_64 5.0.1-1.el7 epel zvbi.x86_64 0.2.35-1.el7 epel zvbi-devel.x86_64 0.2.35-1.el7 epel zvbi-fonts.noarch 0.2.35-1.el7 epel
有时候咱们须要下载rpm包,而仅仅是复制给其余机器使用,yum工具安装rpm包时,首先下载这个rpm包,而后再去安装,因此咱们能够作到只下载而不安装。less
[root@yong-02 yum.repos.d]# yum install -y 2ping.noarch --downloadonly 已加载插件:fastestmirror Loading mirror speeds from cached hostfile * epel: mirror01.idc.hinet.net 正在解决依赖关系 --> 正在检查事务 ---> 软件包 2ping.noarch.0.3.2.1-2.el7 将被 安装 --> 解决依赖关系完成 依赖关系解决 ==================================================================================== Package 架构 版本 源 大小 ==================================================================================== 正在安装: 2ping noarch 3.2.1-2.el7 epel 62 k 事务概要 ==================================================================================== 安装 1 软件包 总下载量:62 k 安装大小:204 k Background downloading packages, then exiting: 警告:/var/cache/yum/x86_64/7/epel/packages/2ping-3.2.1-2.el7.noarch.rpm.1317.tmp: 头V3 RSA/SHA256 Signature, 密钥 ID 352c64e5: NOKEY 2ping-3.2.1-2.el7.noarch.rpm.1317.tmp 的公钥还没有安装 2ping-3.2.1-2.el7.noarch.rpm | 62 kB 00:00:00 exiting because "Download Only" specified
yum默认下载到/var/cache/yum/x86_64/7/XXX/packages/ 下面;这里的XXX指的是base,updates,epel等,它跟yum list最右侧的字符串一致。curl
[root@yong-02 yum.repos.d]# ls /var/cache/yum/x86_64/7/epel/packages/ 2ping-3.2.1-2.el7.noarch.rpm
[root@yong-02 yum.repos.d]# ls /var/cache/yum/x86_64/7/epel/packages/ 2ping-3.2.1-2.el7.noarch.rpm [root@yong-02 yum.repos.d]# ls /tmp/ 2ping-3.2.1-2.el7.noarch.rpm
若是已经安装过的包使用—downloadnoly就不起做用了,他会提示这个包已经安装过了,根本下载不下来: 工具
[root@yong-02 yum.repos.d]# yum install -y vim-enhanced --downloadonly --downloaddir=/tmp/ 已加载插件:fastestmirror Loading mirror speeds from cached hostfile * epel: mirror01.idc.hinet.net 软件包 2:vim-enhanced-7.4.160-2.el7.x86_64 已安装而且是最新版本 无须任何处理
[root@yong-02 yum.repos.d]# yum reinstall -y vim-enhanced --downloadonly --downloaddir=/tmp/ 已加载插件:fastestmirror Loading mirror speeds from cached hostfile * epel: mirrors.ustc.edu.cn 正在解决依赖关系 --> 正在检查事务 ---> 软件包 vim-enhanced.x86_64.2.7.4.160-2.el7 将被 已从新安装 --> 解决依赖关系完成 依赖关系解决 ========================================================================================================================= Package 架构 版本 源 大小 ========================================================================================================================= 从新安装: vim-enhanced x86_64 2:7.4.160-2.el7 base 1.0 M 事务概要 ========================================================================================================================= 从新安装 1 软件包 总下载量:1.0 M 安装大小:2.2 M Background downloading packages, then exiting: vim-enhanced-7.4.160-2.el7.x86_64.rpm | 1.0 MB 00:00:01 exiting because "Download Only" specified
解包后,咱们开始安装前要查看 INSTALL ;REDME 两个安装指导文件,查看怎么安装, 安装源码包一般有3个步骤:
./configure //这一步能够定制功能,./configure --prefix=/usr/local/apache2 定义安装目录
make //编译成电脑识别的二进制文件
make install //用于建立相关软件的存放目录和配置文件
注意:将源码包移动到/usr/local/src 下;约定,将源码包都放在这个文件下
[root@yong-02 src]# wget wget http://mirrors.cnnic.cn/apache/httpd/httpd-2.4.33.tar.gz [root@yong-02 src]# wget http://mirrors.cnnic.cn/apache/apr/apr-1.6.3.tar.gz [root@yong-02 src]# wget http://mirrors.cnnic.cn/apache/apr/apr-util-1.6.1.tar.bz2
[root@yong-02 src]# ls apr-1.6.3 apr-util-1.6.1 httpd-2.4.33 apr-1.6.3.tar.gz apr-util-1.6.1.tar.bz2 httpd-2.4.33.tar.gz
[root@yong-02 httpd-2.4.33]# ./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
注意: checking for gcc... no;没有安装gcc编译器
编译可能出现的报错:
须要编译安装apr 进去cd /usr/local/src/apr-1.6.3/
./configure --prefix=/usr/local/apr make&&make install
再次进入cd /usr/local/src/httpd-2.4.33/ 进行编译
./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
缺乏APR-util,继续编译安装
cd /usr/local/src/apr-util-1.6.1/
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make && make install
安装 yum install expat-devel
yum install -y gcc
yum install -y pcre-devel
在继续编译apache ,出现如下提示 说明编译成功。
[root@yong-02 httpd-2.4.33]# echo $? 0
[root@yong-02 httpd-2.4.33]# make && make install
[root@yong-02 httpd-2.4.33]# echo $? 0
[root@yong-02 httpd-2.4.33]# ls /usr/local/apache2/ bin build cgi-bin conf error htdocs icons include logs man manual modules
扩展
1. 配置yum源优先级 http://ask.apelearn.com/question/7168
2. 把源码包打包成rpm包 http://www.linuxidc.com/Linux/2012-09/70096.htm