在一些环境下,服务器不能连接互联网,但是我们又偏偏需要安装一些软件,此时有点麻烦了。通过使用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
此时,局域网内的服务器可以下载软件了,并且速度也很快!
对于本博客有疑问联系:tuna_dai@163.com
共同进步