搭建企业内部yum源 搭建企业内部yum仓库 只通过yum下载rpm包及其依赖包,而不进行安装 通过yum下载并安装rpm包 搭建epel源

yum源支持三种协议,http、https、ftp,以及yum还支持本地路径,如:baseurl=file:///etc/xxx


1、yum install createrepo yum-utils -y

2、mkdir /data/yum.local/ -pv                              #创建存放本地rpm包的目录

3、mkdir /data/yum.local/centos/7/os/x86_64/Packages/ -pv  #创建存放centos7-rpm包的目录

4、yum install httpd -y                                    #使用httpd或nginx提供web服务

5、vim /etc/httpd/conf/httpd.conf                          #修改配置文件之前,做好原配置文件的备份
DocumentRoot "/data/yum.local/"                            #指定主站点的根目录

<Directory "/data/yum.local/">
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted                                    #允许所有人访问此目录
</Directory>    

6、mv /etc/httpd/conf.d/welcome.conf /tmp                  #将默认主页面的配置文件移走,尽量少用rm命令

7、systemctl restart httpd

8、systemctl enable httpd

9、createrepo /data/yum.local/centos/7/os/x86_64/  
#初始化repodata索引文件,会在此目录下生成repodata目录;如果没有初始化repodata目录,则yum无法找到rpm包

10、vim /etc/yum.repos.d/base.repo                                #编写yum源仓库的配置文件
[base]
name=base
baseurl=http://192.168.39.101/centos/$releasever/os/$basearch/    #此路径必须是repodata目录所在路径
gpgcheck=0

11、yum clean all

12、yum repolist

13、这样就可以把下载好的rpm包拷贝到 /data/yum.local/centos/7/os/x86_64/Packages/ 目录下

14、每次上传一个新的rpm包,都需要执行:
(1)createrepo --update /data/yum.local/centos/7/os/x86_64/       #更新索引文件
(2)yum clean all

只通过yum下载rpm包及其依赖包,而不进行安装

1、yumdownloader httpd --resolve --destdir=/data/rpm.package/
#yumdownloader工具来自于yum-utils包;指定下载httpd软件包,--relosve会下载httpd所有的依赖包,--destdir指定下载路径

通过yum下载并安装rpm包

1、vim /etc/yum.conf      
[main]
cachedir=/data/rpm.package     #指定下载的rpm包路径
keepcache=1                    #开启包缓存,这样在安装完软件后就不会自动删除所下载的rpm包

2、mv /data/rpm.package/* /data/yum.local/centos/7/os/x86_64/Packages/

3、createrepo --update /data/yum.local/centos/7/os/x86_64/

4、yum clean all

搭建epel源

1、wget -P  /etc/yum.repos.d/  http://mirrors.aliyun.com/repo/epel-7.repo  #下载公网的epel源的repo文件到指定目录下

2、mkdir /data/yum.local/epel/7/x86_64/Packages -pv

3、nohup  reposync  -p  /data/yum.local/epel/7/x86_64/                     #同步阿里云的rpm包到指定目录

4、mv /data/yum.local/epel/7/x86_64/epel/Packages/*  /data/yum.local/epel/7/x86_64/Packages/

5、createrepo /data/yum.local/epel/7/x86_64/

6、mv /data/yum.local/epel/7/x86_64/epel /tmp

7、vim /etc/yum.repos.d/epel.repo
[local]
name=local repo
baseurl=http://192.168.39.101/epel/$releasever/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7                        #指定本地key文件路径
enabled=1

8、yum clean all