基于http 构建 yum 网络源

前言

yum 光盘源默认只能本机使用,局域网其他服务器无法使用 yum 光盘源,如果想使用,需要在每台服务器上构建 yum 本地源,该方案在企业中不可取,所以需要构建http局域网yum源,可以通过 createrepo 创建本地 yum 源端。

构建http 局域网 yum 源步骤方法

1、挂载光盘镜像文件至/mnt

mount /dev/cdrom  /mnt/

2、复制/mnt/Packages 目录下所有软件包至Apache服务器发布路径

mkdir -p/var/www/html/centos/
cp -R /mnt/Packages/*         /var/www/html/centos/

3、使用 createrepo 创建本地源

yum install createrepo -y
cd /var/www/html
createrepo centos/				#使用 createrepo 创建本地源,执行以上命令会在 centos目录生成 repodata 目录

4、利用http发布yum 本地源。
本地 yum 源通过 createrepo 搭建完毕,需要借助 http web 服务器发布/var/www/html/centos/中所有软件,yum 或者 RPM 安装 HTTP Web 服务器,并启动 httpd 服务。
详细步骤如下:

yum install httpd httpd-devel -y				#安装 HTTP Web 服务。
vim /etc/httpd/conf/httpd.conf					#修改配置文件
ServerName 192.168.158.131:80					#启用,改为IP地址

useradd apache -g apache						#创建Apache 用户和组。
systemctl restart httpd. service				#重启 httpd 服务。
setenforce 0									#临时关闭 SELinux 应用级安全策略。
systemctl stop firewalld. service				#停止防火墙。
ps -ef | grep httpd								#查看 httpd 进程是否启动。

5、创建/etc/yum. repos.d/http. repo 文件
在 yum 客户端,创建/etc/yum. repos.d/http. repo 文件,输入如下内容:

[base]
name ="CentOS7 HTTP Yur"
baseurl= http://192.168.1.115/centos/			#执向我们创建的yun源
gpgcheck = 0									#0表示不检查,那就不用写gpgkey
enabled = 1
[updates]
name ="Centos7 HTTP Yur"
baseurl= http://192.168.1.115/centos/
gpgcheck = 0									#0表示不检查,那就不用写gpgkey
enabled = 1

6、生成缓存

yum clean all									#清空 yum cache
yum makecache									#生成缓存
yum install ntpelate y							#安装 ntpdhte 软件

扩展本地网络yum源

无论是使用 iso 镜像构建的还是 http 构建的yum 源,在使用过程中都会发现缺少很多软件依赖包。如果服务器需要 ntfs-3g 软件包支持,而yum源里没有该软件包,此时需要往yum 源端添加 ntfs-3g软件包,添加方法如下:
(1)切换至/var/www/htm/centos 目录,官网下载 ntfs-3g 软件包。

cd /var/mm/html/centos/
wget http://dl.fedoraproject.orq/pub/epel./7/x86_64/n/ntfe-3g~2016.2.22-3.e17.x86_64.rpm
wget http://dl.fethrapsojet.org/puh/epe./7/:86_64/n/ntfs-3g-devel-2016.2.22-3.e17.x86_64.rpm

(2)使用createrepo命令更新软件包,如需新增其他软件包,把软件下载至本地,然后通过
createrepo --update centos/ 更新即可。
这样就能yum需要重新清除缓存,生成缓存,然后就可以安装ntfs了。

reporsync命令同步外网yum 源

在企业实际应用场景中,仅仅靠光盘中的 RPM 软件包是不能满足需要的,用户可以把外网的 yum 源中的所有软件包同步至本地,完善本地 yum 源的软件包数量及完整性。
获取外网 yum 源软件常见方法包括:rsync、wget、reposync,三种同步方法的区别为:rsync方式需要外网 yum 源支持 rsync 协议;wget可以直接获取;reposync 可以同步几乎所有的 yum 源。下面以 reporsync 为案例,同步外网 yum 源软件至本地,步骤如下:
(1)下载 CentOS 7 repo 文件至/etc/yum. repos.d/,并安装 reposync 命令工具。

wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
mv Centos7-Base-163.repo /etc/yum.repos.d/centos.repo
yum clean all
yum install yum-utils createrepo - y
yum repolist		#查看有哪些存储库

(2)通过 reposync 命令工具获取外网 yum 源所有软件包,r指定 repolist id,默认不加-表示获取外网所有 yum 软件包,p参数表示指定下载软件的路径,如下:

yum repolist					#查看有哪些源,第一列源标识就是
reposync -r base -p /var/www/html/centos/
reposync -r updates -p /var/www/html/centos/

(3)通过 reposync 工具下载完所有的软件包之后,需要执行 createrepo 更新本地 yum仓库。

createrepo --update /var/www/html/centos/

(4)其他服务器需要重新生成缓存

 yum clean all
 yum makecache
 yum install nfs		#正常
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值