更换yum仓库源
- cd /etc/yum.repos.d/
- rm -f dvd.repo
- wget http://mirrors.163.com/.help/CentOS7-Base-163.repo 或者
- curl -O http://mirrors.163.com/.help/CentOS7-Base-163.repo
- yum list
删除之前我们设置的本地源dvd.repo
[root@yong-02 yum.repos.d]# rm dvd.repo
rm:是否删除普通文件 "dvd.repo"?y
将之前备份的文件拷贝到yum.repos下
[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 这个配置文件就是我们要设置的网络源,先将它备份一下。
[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 来下载:
[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
- 清理之前本地yum缓存
[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
完毕!
安装扩展源epel
- yum install -y epel-release
[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
- yum list |grep epel
[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
yum下载rpm包
- yum install -y 包名 --downloadonly
- ls /var/cache/yum/x86_64/7/
- yum install -y 包名 --downloadonly --downloaddir=路径
- yum reinstall -y 包名 --downloadonly --downloaddir=路径
有时候我们需要下载rpm包,而仅仅是复制给其他机器使用,yum工具安装rpm包时,首先下载这个rpm包,然后再去安装,所以我们可以做到只下载而不安装。
1. 下载rpm包而不安装的命令如下:# yum install -y 2ping.noarch --downloadonly
[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最右侧的字符串一致。
[root@yong-02 yum.repos.d]# ls /var/cache/yum/x86_64/7/epel/packages/
2ping-3.2.1-2.el7.noarch.rpm
2. 下载到指定的目录下:--downloaddir=目录
[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 已安装并且是最新版本
无须任何处理
3. 如果就是想下载已经安装过过的RPM包,使用命令reinstall
[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
源码包安装
- cd /usr/local/src/
- wget http://mirrors.cnnic.cn/apache/httpd/httpd-2.4.33.tar.gz
- wget http://mirrors.cnnic.cn/apache/apr/apr-1.6.3.tar.gz
- wget http://mirrors.cnnic.cn/apache/apr/apr-util-1.6.1.tar.bz2
- tar -zxvf httpd-2.4.33.tar.gz ,tar -jxvf apr-util-1.6.1.tar.bz2 ,tar -zxvf apr-1.6.3.tar.gz
- 先编译安装apr和apr-util
- cd httpd-2.4.33
- ./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
- make&&make install
解包后,我们开始安装前要查看 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
1 进行编译:./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
[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 ,出现以下提示 说明编译成功。
- 验证编译是否成功命令:echo $?,返回值0,说明没有问题。
[root@yong-02 httpd-2.4.33]# echo $?
0
2 进行安装:make && make install
[root@yong-02 httpd-2.4.33]# make && make install
- 执行完后可以echo $? ,0表示正常
[root@yong-02 httpd-2.4.33]# echo $?
0
- 查看apache2目录 到此成功安装了apache
[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