局域网内yum源搭建

在一些环境下,服务器不能连接互联网,但是我们又偏偏需要安装一些软件,此时有点麻烦了。通过使用centos镜像文件,搭建yum本地源,局域网内所有服务器都可以连接这一本地源进行软件的下载和安装,下面具体讲解一下如何安装本地yum源:


 1.  反向代理服务器

使用nginx作为yum源的反向代理,下面是使用压缩工具打开ISO镜像文件图片,由于需要上传到服务器,我把这个从ISO解压后的得到的文件进行了压缩-yum.tar.gz



1.1 上传到服务器

将镜像文件上传到代理服务器,解压

scp yum.tar.gz root@IP:/root
tar -zxvf yum.tar.gz

或者直接挂载ISO镜像文件到目录

//首先创建目录,作为镜像文件的挂载点 
mkdir /dac

//然后将ISO文件挂载
#mount -o loop -t iso9660 /Centos.iso /dac

 -o 是mount命令的一个参数,Options的首字母,后面跟着mount选项

loop:用来把一个文件当成硬盘分区mount到目录

-t:指定档案系统的型态,通常不必指定。mount 会自动选择正确的型态。

1.2  修改yum源配置


vi /etc/yum.repos.d/rhel7.repo

做以下修改

[rhel-media]
name=Red Hat Enterprise Linux 7.3
baseurl=file:///root/yum # 镜像文件目录
enabled=1
gpgcheck=0
gpgkey=file:///root/yum/RPM-GPG-KEY-redhat-release # 镜像文件目录下的文件


1.3    安装nginx
1. 安装依赖

yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel openssl openssl-devel gcc


2. 编译安装

tar -zxvf nginx-1.10.1.tar.gz

cd nginx-1.10.1

./configure 
  --prefix=/usr 
  --sbin-path=/usr/sbin/nginx 
  --conf-path=/etc/nginx/nginx.conf 
  --error-log-path=/var/log/nginx/error.log 
  --http-log-path=/var/log/nginx/access.log 
  --pid-path=/var/run/nginx/nginx.pid  
  --lock-path=/var/lock/nginx.lock 
  --user=root 
  --group=root 
  --with-http_ssl_module 
  --with-http_flv_module 
  --with-http_stub_status_module 
  --with-http_gzip_static_module 
  --with-pcre
 
  make && make install 


3. 配置nginx

vim /etc/nginx/nginx.conf

location / {
    root   /root/yum;
    autoindex on;
}


4. nginx重新加载配置

nginx -s reload

5. yum client配置

其他有下载需求的服务器,需要作为client的角色,做以下配置去连接nginx

vi /etc/yum.repos.d/rhel7.repo

[rhel-media]
name=Red Hat Enterprise Linux 7.3
baseurl=http://172.31.10.1/   # 指向反向代理yum
enabled=1
gpgcheck=0
gpgkey=http://172.31.10.1/RPM-GPG-KEY-redhat-release

此时,局域网内的服务器可以下载软件了,并且速度也很快!

原文地址:https://www.cnblogs.com/xiaolinstudy/p/9353022.html