天天看点

搭建局域网CentOS Yum服务器

在公司内部,假设有一批CentOS 服务器需要升级或者服务器软件升级,每一台机都使用yum update命令从外网下载升级包的话,既费时间,也占流量,实在不划算。而且,有时候会遇到物理机不方便联网的情况,那就加无奈。所以,在局域网内搭建yum服务器,应该是每个Linux从业者必须懂的基本功。在此分享一下经验。其实操作很简单,注意一些细节就行了。

提供Yum源的服务器,以下简称为Yum服务器:

CentOS 6.3,主机名为antrolA,IP为192.168.2.161

需要升级的服务器,以下简称为客户端:

CentOS 6.3,主机名为antrolB,IP为192.168.2.124

一、

到官网查找并下载最新的CentOS 6.5镜像。

如果Yum服务器是物理机,需将DVD2镜像刻录到DVD光碟,然后将放进Yum服务器光驱;

如果是虚拟机,则在虚拟机光驱设置中,选择物理机上存放的DVD镜像即可。

Yum服务器加载光驱

[root@antrol ~]# mount /dev/cdrom? /media/cdrom

mount: block device /dev/sr0 is write-protected, mounting read-only

二、

?[root@antrol ~]#yum install httpd

启动httpd服务,并设置为开机时启动

[root@antrol ~]# service httpd start

[root@antrol ~]# chkconfig httpd on

三、

在Appache根目录下建立文件夹yum及其子文件夹CentOS,将光盘内CentOS文件夹下的所有内容拷贝到/var/www/html/yum/CentOS目录下(光碟内其他的数据不需要)。

[root@antrol ~]# mkdir -p /var/www/html/yum

[root@antrol ~]# mkdir -p /var/www/html/yum/CentOS

[root@antrol ~]# cp -prf /media/CentOS/* /var/www/html/yum/CentOS/

可以弹出光碟了

[root@antrol~]# umount /dev/cdrom

[root@antrol~]# eject

四、Yum服务器安装createrepo并创建仓库

createrepo是Linux下的创建仓库的软件包,这个软件包在系统镜像CentOS-5.8-i386-bin-DVD-1of2里是有的。这里已经拷贝到/var/www/html/yum/CentOS目录下了。

[root@antrol ~]# rpm -ivh /var/www/html/yum/CentOS /createrepo-0.4.11-3.el5.noarch.rpm

Preparing… ? ? ? ? ? ? ? ?########################################### [100%]

? ?1:createrepo ? ? ? ? ? ? ########################################### [100%]

warning: /var/www/html/yum/CentOS/createrepo-0.4.11-3.el5.noarch.rpm: Header V3 DSA signature: NOKEY, key ID e8562897)

安装完成之后,在/usr/bin/目录下会有一个createrepo命令。使用createrepo 生成XML metadata,在/var/www/html/yum/CentOS目录下生成repodata 文件夹(具体有何作用,还没弄明白)

[root@antrol ~]# createrepo /var/www/html/yum/CentOS/

2669/2669 – compat-gcc-34-g77-3.4.6-4.1.i386.rpm

Saving Primary metadata

Saving file lists metadata

Saving other metadata

五、

客户端修改Centos-Base.repo,建议先备份一个副本,以后若要从外网更新的话,可以再使用。

[root@zoro ~]# cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak

[root@zoro ~]# vi /etc/yum.repos.d/CentOS-Base.repo

[base]

name=CentOS-$releasever – Base

baseurl=http://192.168.2.161/yum/CentOS

enabled=1

gpgcheck=0

##############Centos-Base.repo内容修改后,以上#######################

yum install --downloadonly --downloaddir=/var/www/html/yumrepo/extras golang    下载包,并且下载依赖

使用--downloadonly需要安装yum-downloadonly 扩展插件用yum安装即可

如果缺少依赖可以用yum provides */libmemcachedutil.so.2反查询所需的包

本文转自 转身撞墙角 51CTO博客,原文链接:http://blog.51cto.com/chentianwang/1743617

继续阅读