centos7利用yum缓存搭建本地源

环境说明

[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
[root@localhost ~]# hostnamectl --static set-hostname yum-cache
[root@yum-cache ~]# systemctl status firewalld.service
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:firewalld(1)
[root@yum-cache ~]# sestatus
SELinux status:                 disabled
[root@yum-cache ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

配置yum缓存

[root@yum-cache ~]# egrep -v "^$|#" /etc/yum.conf
[main]
cachedir=/var/cache/yum   # 设置rpm包缓存的路径
keepcache=1               # 默认为0,改为1
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release
[root@yum-cache ~]#  yum -y install mysql-community-server mysql   # 这边用mysql做实验,下过mysql的都知道,没有rpm包,下载真的慢
[root@yum-cache ~]# pwd
/root
[root@yum-cache ~]# mkdir mysql-5.7.31
[root@yum-cache ~]# ls
anaconda-ks.cfg  mysql-5.7.31
[root@yum-cache ~]# find /var/cache/yum/ -name "*.rpm" -exec cp {} /root/mysql-5.7.31/ \;
[root@yum-cache ~]# ls /root/mysql-5.7.31/
mysql-community-client-5.7.31-1.el7.x86_64.rpm       mysql-community-server-5.7.31-1.el7.x86_64.rpm
mysql-community-common-5.7.31-1.el7.x86_64.rpm       net-tools-2.0-0.25.20131004git.el7.x86_64.rpm
mysql-community-libs-5.7.31-1.el7.x86_64.rpm         postfix-2.10.1-9.el7.x86_64.rpm
mysql-community-libs-compat-5.7.31-1.el7.x86_64.rpm
[root@yum-cache ~]# yum -y install createrepo
[root@yum-cache ~]# createrepo -v mysql-5.7.31/
Spawning worker 0 with 7 pkgs
Worker 0: reading mysql-community-client-5.7.31-1.el7.x86_64.rpm
Worker 0: reading mysql-community-common-5.7.31-1.el7.x86_64.rpm
Worker 0: reading mysql-community-libs-5.7.31-1.el7.x86_64.rpm
Worker 0: reading mysql-community-libs-compat-5.7.31-1.el7.x86_64.rpm
Worker 0: reading mysql-community-server-5.7.31-1.el7.x86_64.rpm
Worker 0: reading net-tools-2.0-0.25.20131004git.el7.x86_64.rpm
Worker 0: reading postfix-2.10.1-9.el7.x86_64.rpm
Workers Finished
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Starting other db creation: Mon Jul 20 22:17:18 2020
Ending other db creation: Mon Jul 20 22:17:18 2020
Starting filelists db creation: Mon Jul 20 22:17:18 2020
Ending filelists db creation: Mon Jul 20 22:17:18 2020
Starting primary db creation: Mon Jul 20 22:17:18 2020
Ending primary db creation: Mon Jul 20 22:17:18 2020
Sqlite DBs complete
[root@yum-cache ~]# cd mysql-5.7.31/  # createrepo后,会产生repodata目录
[root@yum-cache mysql-5.7.31]# ls
mysql-community-client-5.7.31-1.el7.x86_64.rpm       mysql-community-server-5.7.31-1.el7.x86_64.rpm
mysql-community-common-5.7.31-1.el7.x86_64.rpm       net-tools-2.0-0.25.20131004git.el7.x86_64.rpm
mysql-community-libs-5.7.31-1.el7.x86_64.rpm         postfix-2.10.1-9.el7.x86_64.rpm
mysql-community-libs-compat-5.7.31-1.el7.x86_64.rpm  repodata
[root@yum-cache mysql-5.7.31]# vim mysql-5.7.31.repo
[root@yum-cache mysql-5.7.31]# cat mysql-5.7.31.repo
[mysql]
name="mysql-5.7.31-local"
baseurl=file:///root/mysql-5.7.31/
enable=1
gpgcheck=0
[root@yum-cache ~]# tar czvf mysql-5.7.31.tar.gz mysql-5.7.31/   # 将rpm包和repo文件打包,放到其他机器上测试
[root@yum-cache ~]# ls
anaconda-ks.cfg  mysql-5.7.31  mysql-5.7.31.tar.gz

测试

[root@localhost ~]# ls    # 将tar包上传到服务器上
anaconda-ks.cfg  mysql-5.7.31.tar.gz
[root@localhost ~]# tar xf mysql-5.7.31.tar.gz
[root@localhost ~]# cd mysql-5.7.31/
[root@localhost mysql-5.7.31]# ls
mysql-5.7.31.repo                                    mysql-community-server-5.7.31-1.el7.x86_64.rpm
mysql-community-client-5.7.31-1.el7.x86_64.rpm       net-tools-2.0-0.25.20131004git.el7.x86_64.rpm
mysql-community-common-5.7.31-1.el7.x86_64.rpm       postfix-2.10.1-9.el7.x86_64.rpm
mysql-community-libs-5.7.31-1.el7.x86_64.rpm         repodata
mysql-community-libs-compat-5.7.31-1.el7.x86_64.rpm
[root@localhost mysql-5.7.31]# cp mysql-5.7.31.repo /etc/yum.repos.d/    # 把写好的repo文件复制到yum.repos.d目录下
[root@localhost mysql-5.7.31]# yum clean all   # 清除缓存
Loaded plugins: fastestmirror
Cleaning repos: base extras mysql updates
Cleaning up list of fastest mirrors
[root@localhost mysql-5.7.31]# yum makecache
Loaded plugins: fastestmirror
Determining fastest mirrors
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
base                                                                            | 3.6 kB  00:00:00
extras                                                                          | 2.9 kB  00:00:00
mysql                                                                           | 2.9 kB  00:00:00
updates                                                                         | 2.9 kB  00:00:00
(1/13): base/7/x86_64/group_gz                                                  | 153 kB  00:00:01
(2/13): extras/7/x86_64/filelists_db                                            | 217 kB  00:00:02
(3/13): extras/7/x86_64/other_db                                                | 125 kB  00:00:00
(4/13): base/7/x86_64/other_db                                                  | 2.6 MB  00:00:03
(5/13): mysql/filelists_db                                                      | 6.5 kB  00:00:00
(6/13): mysql/other_db                                                          | 4.1 kB  00:00:00
(7/13): mysql/primary_db                                                        |  10 kB  00:00:00
(8/13): updates/7/x86_64/filelists_db                                           | 1.7 MB  00:00:00
(9/13): updates/7/x86_64/other_db                                               | 250 kB  00:00:00
(10/13): extras/7/x86_64/primary_db                                             | 205 kB  00:00:02
(11/13): updates/7/x86_64/primary_db                                            | 3.0 MB  00:00:01
(12/13): base/7/x86_64/filelists_db                                             | 7.1 MB  00:00:10
(13/13): base/7/x86_64/primary_db                                               | 6.1 MB  00:00:12
Metadata Cache Created
[root@localhost ~]# yum -y install mysql-community-server mysql   # 然后你就会发现,直接开始installing了
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。