Centos6.5通过创建局域网http实现yum源的更新

简介:

(一)简述

        公司通过新进了一批服务器,通过VMware的Vsphere企业级的虚拟化解决方案创建了一批虚拟机,只供内网访问,所有的虚拟机无法上外网,所以造成了原先的yum源通过外网的方式安装软件包而无法安装,所以为了日常的软件包的安装,只能在内网创建新的yum源来进行安装。

环境介绍:

名称 IP地址 功能
yum源服务端 172.22.11.108 yum源的服务端
yum客户端(使用者) 172.22.11.103 yum源的使用者


(二)yum源服务端的配置

  1. 首先查看一下服务端的yum的相关信息

1
2
3
4
5
6
[root@GVPA02-011108 cdrom] # rpm -qa|grep yum 
yum-plugin-security-1.1.30-14.el6.noarch
yum-plugin-fastestmirror-1.1.30-14.el6.noarch
yum-metadata-parser-1.1.2-16.el6.x86_64
yum-3.2.29-40.el6.centos.noarch
yum-utils-1.1.30-14.el6.noarch

2,安装createrepo,repo下的xml生成工具

1
[root@GVPA02-011108 cdrom] # yum install -y createrepo

3,制作yum源

    3.1,随意创建一个文件夹作为yum的仓库名称,用来存放RPM包

1
[root@GVPA02-011108 cdrom] # mkdir /yumrepo

    3.2,挂载光盘并把光盘里边RPM包都拷到/yumrepo文件夹里

1
2
3
4
5
6
7
8
[root@GVPA02-011108 cdrom] # mount /dev/cdrom /mnt
mount : block device  /dev/sr0  is write-protected, mounting  read -only
[root@GVPA02-011108 cdrom] # cp -r /mnt/
CentOS_BuildTag                GPL                            RELEASE-NOTES-en-US.html       RPM-GPG-KEY-CentOS-Security-6
.discinfo                      images/                        repodata/                      RPM-GPG-KEY-CentOS-Testing-6
EFI/                           isolinux/                      RPM-GPG-KEY-CentOS-6           TRANS.TBL
EULA                           Packages/                      RPM-GPG-KEY-CentOS-Debug-6     .treeinfo
[root@GVPA02-011108 cdrom] # cp -r /mnt/Packages/* /yumrepo/

    3.3把密钥也拷贝到/yumrepo文件夹里

1
[root@GVPA02-011108 cdrom] # cp /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 /yumrepo/


4,执行命令生成repodata ,创建主目录文件索引。-v参数后边跟你的RPM包的文件夹。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
[root@GVPA02-011108 cdrom] #createrepo -v  /yumrepo
Worker 0: reading kernel-devel-2.6.32-431.el6.x86_64.rpm
Worker 0: reading samyak-gujarati-fonts-1.2.1-9.el6.noarch.rpm
Worker 0: reading srptools-0.0.4-15.el6.x86_64.rpm
Worker 0: reading kdenetwork-4.3.4-11.el6_0.1.x86_64.rpm
Workers Finished
Gathering worker results
Saving Primary metadata
Saving  file  lists metadata
Saving other metadata
Generating sqlite DBs
Starting other db creation: Wed Nov  1 18:53:22 2017
Ending other db creation: Wed Nov  1 18:53:23 2017
Starting filelists db creation: Wed Nov  1 18:53:23 2017
Ending filelists db creation: Wed Nov  1 18:53:28 2017
Starting primary db creation: Wed Nov  1 18:53:28 2017
Ending primary db creation: Wed Nov  1 18:53:31 2017
Sqlite DBs complete

5,制作本地yum源文件,要以.repo为结尾的。配置好目前还不能用,要用httpd来代理出来

1
2
3
4
5
6
[root@GVPA02-011108 yumrepo] # vim /etc/yum.repos.d/localyum.repo
[base]
name=localyum
baseurl=http: //172 .22.11.108
gpgcheck=0
gpgkey= file : ///yumrepo/RPM-GPG-KEY-CentOS-6

6,基于http的yum源相关配置

    6.1,安装apache软件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
[root@GVPA02-011108 yumrepo] # yum install httpd -y
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package httpd.x86_64 0:2.2.15-29.el6.centos will be installed
--> Finished Dependency Resolution
Dependencies Resolved
==========================================================================================================================
  Package                  Arch                      Version                                 Repository               Size
==========================================================================================================================
Installing:
  httpd                    x86_64                    2.2.15-29.el6.centos                    base                    821 k
Transaction Summary
==========================================================================================================================
Install       1 Package(s)
Total download size: 821 k
Installed size: 2.9 M
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
   Installing : httpd-2.2.15-29.el6.centos.x86_64                                                                      1 /1 
   Verifying  : httpd-2.2.15-29.el6.centos.x86_64                                                                      1 /1 
Installed:
   httpd.x86_64 0:2.2.15-29.el6.centos                                                                                     
Complete!

    6.2,修改httpd.conf配置文件的DocumentRoot 和<Directory "/yumrepo">两个配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
[root@GVPA02-011108 yumrepo] # vim /etc/httpd/conf/httpd.conf
# DocumentRoot: The directory out of which you will serve your
# documents. By default, all requests are taken from this directory, but
# symbolic links and aliases may be used to point to other locations.
#
DocumentRoot  "/yumrepo"
 
 
<Directory  "/yumrepo" >
# Possible values for the Options directive are "None", "All",
# or any combination of:
#   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important.  Please see
# http://httpd.apache.org/docs/2.2/mod/core.html#options
# for more information.
#
     Options Indexes FollowSymLinks
 
#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
#   Options FileInfo AuthConfig Limit
#
     AllowOverride None
 
#
# Controls who can get stuff from this server.
#
     Order allow,deny
     Allow from all
 
< /Directory >

    6.3,删除欢迎页面welcome.conf,并给/yumrepo赴权限

1
2
[root@GVPA02-011108 yumrepo] # rm /etc/httpd/conf.d/welcome.conf 
rm : remove regular  file  ` /etc/httpd/conf .d /welcome .conf'? y

    6.4,关闭selinux并重启下httpd服务

1
2
3
4
5
[root@GVPA02-011108 conf] # /etc/init.d/httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using 172.22.11.108  for  ServerName
                                                            [  OK  ]
[root@GVPA02-011108 conf] # echo 0 > /selinux/enforce   #########不添加这个条件可能出现403禁止访问                                              [  OK  ]

访问界面如下即可:

e594537e5b398f6d5a63335a46e4fbd2.png-wh_


7,如果yum包需要更新的话,可以直接在阿里云或163上进行更新,并执行如下命令

1
2
3
4
[root@GVPA02-011108 conf] # wget -np -t 1 -nH –cut-dirs=1 -r -c -L –exclude-directories=repodata –accept=rpm,zip,gz,xml http://mirrors.163.com/centos/6.5/os/x86_64/Packages/ -P /yumrepo   ###下载最新的rpm包
[root@GVPA02-011108 conf] # createrepo --update /yumrepo             ####更新yum源
 
###客户端只需要yum clean all 和yum makecache 即可就能直接使用了




(三)yum客户端配置

1,在yum客户端172.22.11.104上将默认 的yum源关闭,并设置epel.repo将enables 为0

1
2
3
4
5
6
7
8
9
[root@SIPA01-011104 yum.repos.d] # vim epel.repo 
[epel]
name=Extra Packages  for  Enterprise Linux 6 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch
mirrorlist=https: //mirrors .fedoraproject.org /metalink ?repo=epel-6&arch=$basearch
failovermethod=priority
enabled=0
gpgcheck=1
gpgkey= file : ///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

2,创建自己的localyum.repo文件

1
2
3
4
5
6
[root@SIPA01-011104 yum.repos.d] # vim localyum.repo 
[base]
name=localyum
baseurl=http: //172 .22.11.108
gpgcheck=0
gpgkey= file : ///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

3,清除和加载rpm包

1
2
3
4
5
6
7
8
9
10
11
12
[root@SIPA01-011104 yum.repos.d] # yum clean all
Loaded plugins: fastestmirror, security
Cleaning repos: base
Cleaning up Everything
Cleaning up list of fastest mirrors
[root@SIPA01-011104 yum.repos.d] # yum makecache
Loaded plugins: fastestmirror, security
Determining fastest mirrors
base                                                                                               | 2.9 kB     00:00     
base /filelists_db                                                                                   | 4.1 MB     00:00     
base /primary_db                                                                                     | 3.3 MB     00:00     
base /other_db                                                                                       | 1.8 MB     00:00

4,客户端执行完成,就可以直接使用yum install命令了。


本文转自 lqbyz 51CTO博客,原文链接:http://blog.51cto.com/liqingbiao/1978066


相关文章
|
1月前
|
Linux 虚拟化 开发者
一键将CentOs的yum源更换为国内阿里yum源
一键将CentOs的yum源更换为国内阿里yum源
3088 8
|
3月前
|
关系型数据库 MySQL Linux
在CentOS上使用yum安装与使用MySQL
在CentOS操作系统上使用yum包管理器安装和配置MySQL数据库的详细步骤,包括下载MySQL的yum源配置、安装MySQL服务、启动和停止服务、设置开机自启动、获取临时密码、修改root用户密码、授权用户以及处理相关问题。同时,文章还包含了一些操作的截图,帮助用户更直观地理解安装和配置过程。
911 0
在CentOS上使用yum安装与使用MySQL
|
3月前
|
Web App开发 缓存 Ubuntu
Linux中yum、rpm、apt-get、wget的区别,yum、rpm、apt-get常用命令,CentOS、Ubuntu中安装wget
Linux中yum、rpm、apt-get、wget的区别,yum、rpm、apt-get常用命令,CentOS、Ubuntu中安装wget
202 11
|
2月前
|
Linux
centos使用阿里的yum源
centos使用阿里的yum源
|
4月前
|
缓存 Linux
Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stoc
CentOS 默认的镜像源可能无法访问。可以更换为其他镜像源,例如阿里云、腾讯云等。
359 6
|
3月前
|
网络协议 Linux
CentOS7 yum安装报错“Could not resolve host: mirrorlist.centos.org;"之解决办法(换源)
CentOS7 yum安装报错“Could not resolve host: mirrorlist.centos.org; Name or service not known“之解决办法(换源)
|
3月前
|
缓存 Linux 网络安全
解决 CentOS 7 官方 yum 仓库无法使用的最佳实践
【8月更文挑战第18天】若 CentOS 7 的官方 YUM 仓库无法使用,可按以下步骤解决: 1. **检查网络连接**: - 确认服务器能正常上网,可通过访问外部网站或网络诊断测试。 - 检查防火墙设置,避免其阻挡 YUM 的网络访问。 2. **检查 YUM 配置**: - 核实 `/etc/yum.repos.d/` 下的 `CentOS-Base.repo` 文件中仓库地址正确无误。 - 确认配置文件内的 `enabled` 选项设为 `1` 以启用仓库。
1642 0
|
3月前
|
Linux Docker 容器
在CentOS操作系统上使用yum安装/使用/卸载Docker容器引擎
在CentOS操作系统上安装、配置、使用和卸载Docker容器引擎的详细步骤,包括配置Docker镜像加速的方法。
344 0
|
3月前
|
jenkins Java Devops
CentOS 7上安装 Jenkins 2.346 -- yum 方式
CentOS 7上安装 Jenkins 2.346 -- yum 方式
205 0
|
3月前
|
jenkins Linux 持续交付
CentOS 7上安装 Jenkins 2.227 -- yum 方式
CentOS 7上安装 Jenkins 2.227 -- yum 方式
186 0
下一篇
无影云桌面