CentOS 7 本地 YUM 源制作

0.117字数 727阅读 604
YUM 相关概念及其作用

Q:什么是 YUM?
A:YUM(全称:Yellow dog Update,Modified)是一个在 Fedora 和 ReaHat 已经 CentOS 中的 Shell 前端软件包管理器。基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并安装,可以自动处理依赖关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

Q:YUM 的作用是什么?
A:在 Linux 上使用源码的方式安装软件非常实用,使用 YUM 可以简化安装的过程。

YUM 常用命令
安装 httpd 并确认安装
yum install -y httpd

列出所有可用的 package 和 package 包
yum list

清除所有缓存数据
yum deplist httpd

列出一个包所有依赖的包
yum deplist httpd

删除 httpd
yum remove httpd
制作本地 YUM 源

Q:为什么要制作本地 YUM 源?
A:虽然 YUM 源可以简化在 Linux 上安装软件的过程,但是生产环境通常无法上网,不能连接外网的 YUM 源,所以就无法使用 YUM 命令安装软件了。为了在内网中也可以使用 YUM 安装相关的软件,就需要配置本地 YUM 源了。

Q:YUM 源的原理是什么?
A:YUM 源其实就是一个保存了多个 RPM 包的服务器,可以通过 http 的方式来检索、下载并安装相关的 RPM 包。

Q:如何制作本地 YUM 源?
A:①、准备一台 Linux 服务器,用最简单的版本就行;
②、配置好这台服务器基本配置(具体参考《VMware 中的 CentOS 7 的基本配置》);
③、上传 CentOS-7-x86_64-DVD-1611.iso 到服务器;(笔者使用 Xftp,基于 ftp 文件传输协议
④、将 CentOS-7-x86_64-DVD-1611.iso 镜像挂载到某个目录:

mkdir /var/iso
## 笔者的 CentOS-7-x86_64-DVD-1611.iso 所在 home/hadoop01 目录下
mount -o loop /home/hadoop01/CentOS-7-x86_64-DVD-1611.iso /var/iso

⑤、更新 YUM修改本机上的 YUM 源配置文件,将源指向本地,然后备份原有的 YUM 源的配置文件

yum update
cd /etc/yum.repos.d/
rename .repo .repo.bak *
vi CentOS-Local.repo

CentOS-Local.repo 文件内容:

[base]
name=CentOS-Local
baseurl=file:///var/iso
gpgcheck=1
enabled=1   #很重要,1才启用
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

⑥、清除 YUM 缓冲

yum clean all

⑦、列出可用的 YUM 源,注意状态一列必须有值,且不为 0

yum repolist

⑧、安装相应的软件(HTTP)

yum install -y httpd

⑨、开启 httpd 使用浏览器访问 http://192.168.81.61:80 (如果访问不通,检查防火墙是否开启了 80 端口或关闭防火墙)

service httpd start

如果访问不通

## 开启 80 端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
## –zone                # 作用域
## –add-port=80/tcp     # 添加端口,格式为:端口/通讯协议
## –permanent           # 永久生效,没有此参数重启后失效
## 
firewall-cmd --reload               # 重启 firewall
systemctl stop firewalld.service    # 停止 firewall
systemctl disable firewalld.service #禁止firewall开机启动

⑩、将 YUM 源配置到 httpd (Apache Server)中,其他的服务器即可通过网络访问这个内网中的 YUM 源了

cp -r /var/iso/ /var/www/html/CentOS-7

⑪、取消先前挂载的镜像

umount /var/iso

⑫、在浏览器中访问 http://192.168.81.61/CentOS-7,如下显示,即成功。

⑬、让其他需要安装 RPM 包的服务器指向这个 YUM 源,准备一台新的服务器,更新 YUM、备份或删除原有的 YUM 源配置文件

yum update
cd /etc/yum.repos.d/
rename .repo .repo.bak *
vi CentOS-Local.repo
[base]
name=CentOS-Local
baseurl=http://192.168.81.61/CentOS-7
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

⑭、在这台新的服务器上执行 YUM 的命令

yum clean all
yum repolist
yum install -y httpd