基于vsftp的本地YUM源

1)安装vsftp;
    ******************************************
[root@service ~]# mount /dev/hdc /mnt
[root@service ~]# cd /mnt/Server/
[root@service Server]# ls |grep vsftp
vsftpd-2.0.5-12.el5.i386.rpm
[root@service Server]# rpm --import /etc/pki/rpm-pgp/RPM- PGP-KEY-redhat-release
[root@service Server]# rpm -ivh vsftpd-2.0.5-12.el5.i386.rpm
[root@service Server]# chkconfig vsftpd on  //开启计算机自动运行vsftpd服务
[root@service Server]# service vsftpd restart
  ****************************************************
2)将安装光盘中的文件全部移动到/var/ftp/pub目录下;
3)安装createrepo并创建相关yum库文件:
  *****************************************************
[root@service Server]# ls |grep create
createrepo-0.4.11-3.el5.noarch.rpm
[root@service Server]# rpm -ivh createrepo-0.4.11-3.el5.noarch.rpm
[root@service Server]# createrepo -v /var/ftp/pub  //打完命令等待一会就会处理完
  *****************************************************
4)编辑/etc/yum.conf文件;加入如下内容:
   vim /etc/yum.conf
  ******************************************
[yumok]  (名字可以随便写)
name=yumok(名字可以随便写和上面相同)
baseurl=ftp://192.168.1.88/pub/Server(填写本地的IP地址及相关路径,这里的根是/var/ftp/ ;如果YUM服务器不是本机对应的修改这个地址就可以)
enabled=1
gpgcheck=1
    ********************************************
5)测试yum一;例如我们安装gcc
Yum list| grep gcc*;列出相关的yum源。
Yum install gcc.i386 ;yum相关关包源文件的结尾都是.i386
6)yum安装的包源的卸载;
Yum remove gcc ;在卸载包源的时候只会卸载指定的包,安装是需要同步安装的包一般不会删除。
备注:如果在用yum list命令查看列表时出现不能查看被防火前屏蔽的问题
1)防火墙的问题:打开20:21端口: vim /etc/sysconf/iptables
    ************************************************
……前面省略
-A RH-Firewall-1-INPUT -p tcp —dport 20:21 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp —dport 20:21 -j ACCEPT
……后面省略  增加上上面这两行
    ***********************************************
2)selinux的问题:
    ************************************************
setsebool -P -ftpd_disable_trans on
setsebool -P -allow_ftpd_full_access on
servie vsftpd restart


总结:配置yum.conf地址时要注意、速度快、yum install dhcp可以安装,但是yum install httpd就无法触觉依赖了、如果能连网的情况下还是推荐使用网络源。

 


=============================================================================

 

第二种,未测试,

一. 服务器端配置

 

1.1 安装FTP 服务,并配置自启动

 

[root@centos Server]# rpm -ivh vsftpd-2.0.5-16.el5.i386.rpm

 

warning: vsftpd-2.0.5-16.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186

 

Preparing...                ########################################### [100%]

 

   1:vsftpd                 ########################################### [100%]

 

[root@centos Server]# chkconfig vsftpd on

 

[root@centos Server]# chkconfig vsftpd --list

 

vsftpd          0:off   1:off   2:on    3:on    4:on    5:on    6:off

 

[root@centos Server]# service vsftpd restart

 

Shutting down vsftpd:                                      [FAILED]

 

Starting vsftpd for vsftpd:                                [ OK ]

 

[root@centos Server]#

 

 

 

linux FTP 的配置,在下篇文章里会做说明, 这篇只演示如何使用。

 

 

 

 

 

1.2 复制RPM 包

 

       将RHEL 5光盘中的Server、VT、Cluster、ClusterStorage四个目录复制到/var/ftp/pub下。

 

 

 

[root@centos RHEL_5.4 i386 DVD]# du -k

 

253     ./Cluster/repodata

 

69571   ./Cluster

 

143     ./ClusterStorage/repodata

 

10300   ./ClusterStorage

 

10546   ./Server/repodata

 

2626369 ./Server

 

182     ./VT/repodata

 

47724   ./VT

 

8512    ./images/pxeboot

 

8914    ./images/xen

 

166766 ./images

 

8646    ./isolinux

 

2934671 .

 

[root@centos RHEL_5.4 i386 DVD]# cp -rf Cluster /var/ftp/pub/

 

[root@centos RHEL_5.4 i386 DVD]# cp -rf ClusterStorage /var/ftp/pub/

 

[root@centos RHEL_5.4 i386 DVD]# cp -rf VT /var/ftp/pub/           

 

[root@centos RHEL_5.4 i386 DVD]# cp -rf Server/ /var/ftp/pub/

 

 

 

 

 

[root@centos pub]# pwd

 

/var/ftp/pub

 

[root@centos pub]# ls

 

Cluster ClusterStorage Server VT

 

[root@centos pub]# du -k

 

276     ./Cluster/repodata

 

69816   ./Cluster

 

10584   ./Server/repodata

 

2638388 ./Server

 

160     ./ClusterStorage/repodata

 

10468   ./ClusterStorage

 

200     ./VT/repodata

 

47924   ./VT

 

2766600 .

 

[root@centos pub]#

 

 

 

1.3. 安装createrepo包,并重建包依赖关系

 

       createrepo包是用来生成RPM 依赖关系及分组信息的。 搭建YUM服务器,必须要重建着2个信息。

 

 

 

1.3.1 检查包安装情况

 

[root@centos Server]# rpm -q yum

 

yum-3.2.22-20.el5.centos

 

[root@centos Server]# rpm -q createrepo

 

package createrepo is not installed

 

[root@centos Server]# rpm -ivh createrepo-0.4.11-3.el5.noarch.rpm

 

warning: createrepo-0.4.11-3.el5.noarch.rpm: Header V3 DSA signature: NOKEY, key ID 37017186

 

Preparing...                ########################################### [100%]

 

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

 

[root@centos Server]# rpm -q createrepo

 

createrepo-0.4.11-3.el5

 

[root@centos Server]#

 

 

 

1.3.2 重建分组及依赖关系

 

 

 

       在RHEL 5中每个目录下的repodata目录下都有一个repomd.xml,该文件中就记录了rpm包的依赖关系,还有一个comps-rhel5-*.xml文件,这个文件主要记录分组情况,建立yum仓库时,需要先重建该文件。

 

 

 

[root@centos repodata]# pwd

 

/var/ftp/pub/Server/repodata

 

[root@centos repodata]# ls

 

comps-rhel5-server-core.xml filelists.xml.gz other.xml.gz primary.xml.gz repomd.xml TRANS.TBL

 

 

 

重建Server:

 

[root@centos pub]# createrepo -g /var/ftp/pub/Server/repodata/comps-rhel5-server-core.xml /var/ftp/pub/Server/

 

2292/2292 - xorg-x11-xinit-1.0.2-15.el5.i386.rpm    --这里有2千多个包                          

 

Saving Primary metadata

 

Saving file lists metadata

 

Saving other metadata

 

[root@centos pub]#

 

 

 

重建VT:

 

[root@centos pub]# createrepo -g /var/ftp/pub/VT/repodata/comps-rhel5-vt.xml /var/ftp/pub/VT/

 

36/36 - Virtualization-or-IN-5.2-11.noarch.rpm                                  

 

Saving Primary metadata

 

Saving file lists metadata

 

Saving other metadata

 

 

 

重建Cluster:

 

[root@centos pub]# createrepo -g /var/ftp/pub/Cluster/repodata/comps-rhel5-cluster.xml /var/ftp/pub/Cluster/

 

32/32 - Cluster_Administration-zh-TW-5.2-1.noarch.rpm                          

 

Saving Primary metadata

 

Saving file lists metadata

 

Saving other metadata

 

 

 

重建ClusterStorage:

 

[root@centos pub]# createrepo -g /var/ftp/pub/ClusterStorage/repodata/comps-rhel5-cluster-st.xml /var/ftp/pub/ClusterStorage/

 

39/39 - Global_File_System-or-IN-5.2-1.noarch.rpm                              

 

Saving Primary metadata

 

Saving file lists metadata

 

Saving other metadata

 

[root@centos pub]#

 

 

 

1.4 修改YUM 配置文件

 

       在每个客户端使用YUM时,必须需要修改配置文件。

 

       我们先看文件: /etc/yum.repos.d/*.repo。 这个文件名称可以随便定义,但是扩展名必须是repo.

 

      

 

[root@centos pub]# cat /etc/yum.repos.d/CentOS-Base.repo

 

[base]

 

name=CentOS-$releasever - Base

 

mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os

 

#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/

 

gpgcheck=1

 

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

 

...

 

 

 

这 个是我CentOS上的部分内容。 其他的类似。 这个文件其实是在使用yum安装的客户端使用的。 我们在服务器创建这个配置文件的原因是方便使用。 假如在公司里的Linux客户端非常多,我们不必去修改每个客户端的这个YUN配置文件。 只需要从服务器上将这个文件下载到本机就可以了。

 

 

 

在YUM服务器上创建文件:

 

[root@centos pub]# cat /etc/yum.repos.d/rhel54.86.repo   

 

[rhel-base]

 

name= TianleSoftware Redhat Enterprise 5.4

 

baseurl=ftp://192.168.6.2/pub/Server

 

gpgcheck=0

 

enabled=1

 

 

 

[rhel-vt]

 

name= TianleSoftware Redhat Enterprise 5.4

 

baseurl=ftp://192.168.6.2/pub/VT

 

gpgcheck=0

 

enabled=1

 

 

 

[rhel-cluster]

 

name= TianleSoftware Redhat Enterprise 5.4

 

baseurl=ftp://192.168.6.2/pub/Cluster

 

gpgcheck=0

 

enabled=1

 

 

 

[rhel-ClusterStorage]

 

name= TianleSoftware Redhat Enterprise 5.4

 

baseurl=ftp://192.168.6.2/pub/ClusterStorage

 

gpgcheck=0

 

enabled=1

 

 

 

       说明: 这里提供的只是一个FTP地址,所以可以使用其他的方式来实现FTP。 不一定非要像第一步里说明的,使用LINUX的FTP。

 

 

 

相关参数说明:

 

       [ ]:内的是仓库的名字,不重复即可。

 

       name:仓库的描述.

 

       baseurl: YUM源地址, 这里配置的是FTP,还可以是HTTP,FILE等。

 

       enabled :是否启用这个仓库,1为起用,0为禁用

 

       gpgcheck :是否检查GPG签名(验证要安装的包是不是REDHAT官方的)。

你可能感兴趣的:(vsftp,本地yum源)