CentOS 搭建内部Yum源仓库

Linux System Environment

[root@yumserver ~]cat /etc/redhat-release                   #==》系统版本
CentOS Linux release 7.5.1804 (Core)
[root@yumserver ~]uname –r                            #==》内核版本
3.10.0-862.el7.x86_64
[root@yumserver ~] uname -m                            #==》系统架构
x86_64
[root@yumserver ~]echo $LANG                           #==》系统字符集
en_US.UTF-8

实验环境:

Yum源仓库服务器IP地址                   10.10.10.20
Yum源测试客户端IP地址                   10.10.10.21

说明:

搭建内部yum源仓库有许多种类,例如file、ftp、http、https,本教程以http进行搭建内部yum源仓库

一、复制一份CentOS 7.5镜像安装包到本地目录(虚拟机已经读取了CentOS 7.5镜像)

[root@yumserver ~]# mount /dev/sr0 /media/
[root@yumserver ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3        72G  1.9G   70G   3% /
devtmpfs        981M     0  981M   0% /dev
tmpfs           992M     0  992M   0% /dev/shm
tmpfs           992M  9.5M  982M   1% /run
tmpfs           992M     0  992M   0% /sys/fs/cgroup
/dev/sda1       497M  117M  380M  24% /boot
tmpfs           199M     0  199M   0% /run/user/0
/dev/sr0        4.2G  4.2G     0 100% /media
[root@yumserver ~]# ls -l /media/
total 678
-rw-rw-r-- 1 root root     14 May  2  2018 CentOS_BuildTag
drwxr-xr-x 3 root root   2048 May  4  2018 EFI
-rw-rw-r-- 1 root root    227 Aug 30  2017 EULA
-rw-rw-r-- 1 root root  18009 Dec 10  2015 GPL
drwxr-xr-x 3 root root   2048 May  4  2018 images
drwxr-xr-x 2 root root   2048 May  4  2018 isolinux
drwxr-xr-x 2 root root   2048 May  4  2018 LiveOS
drwxrwxr-x 2 root root 655360 May  4  2018 Packages
drwxrwxr-x 2 root root   4096 May  4  2018 repodata
-rw-rw-r-- 1 root root   1690 Dec 10  2015 RPM-GPG-KEY-CentOS-7
-rw-rw-r-- 1 root root   1690 Dec 10  2015 RPM-GPG-KEY-CentOS-Testing-7
-r--r--r-- 1 root root   2883 May  4  2018 TRANS.TBL
[root@yumserver ~]# mkdir -p /mnt/yumserver
[root@yumserver ~]# cp -rp /media/* /mnt/yumserver/
[root@yumserver ~]# ls -l /mnt/yumserver/
total 320
-rw-rw-r-- 1 root root     14 May  2  2018 CentOS_BuildTag
drwxr-xr-x 3 root root     35 May  4  2018 EFI
-rw-rw-r-- 1 root root    227 Aug 30  2017 EULA
-rw-rw-r-- 1 root root  18009 Dec 10  2015 GPL
drwxr-xr-x 3 root root     57 May  4  2018 images
drwxr-xr-x 2 root root    198 May  4  2018 isolinux
drwxr-xr-x 2 root root     43 May  4  2018 LiveOS
drwxrwxr-x 2 root root 221184 May  4  2018 Packages
drwxrwxr-x 2 root root   4096 May  4  2018 repodata
-rw-rw-r-- 1 root root   1690 Dec 10  2015 RPM-GPG-KEY-CentOS-7
-rw-rw-r-- 1 root root   1690 Dec 10  2015 RPM-GPG-KEY-CentOS-Testing-7
-r--r--r-- 1 root root   2883 May  4  2018 TRANS.TBL

二、配置本地yum源安装Apache服务

###清除本地主机所有的yum源配置文件,此步骤为了方便测试
[root@yumserver ~]# mv /etc/yum.repos.d/*  /tmp/

###创建本地yum源仓库配置文件Localhost_Yum.repo,一定要以.repo结尾
[root@yumserver ~]# vim /etc/yum.repos.d/Localhost_Yum.repo
[localhost_yum]
name=CentOS-$releasever - localhost_yum
baseurl=file:///mnt/yumserver/                    ###指定本地的yum源仓库软件包
gpgcheck=0                                         ###关闭密钥验证
enabled=1                                          ###开启
[root@yumserver ~]# yum repolist all              ###查看所有yum源信息
[root@yumserver ~]# yum makecache                 ###缓存配置的yum源
[root@yumserver ~]# yum list all | grep httpd     ###查找Apache安装包
[root@yumserver ~]# yum -y install httpd
[root@yumserver ~]# rpm -qa | grep httpd
httpd-tools-2.4.6-80.el7.centos.x86_64
httpd-2.4.6-80.el7.centos.x86_64
[root@yumserver ~]# systemctl start httpd
[root@yumserver ~]# systemctl enable httpd
[root@yumserver ~]# systemctl status httpd

三、复制一份CentOS 7.5镜像文件到Apache默认web访问路径

[root@yumserver ~]# mkdir -p /var/www/html/centos/7/os/x86_64/
[root@yumserver ~]# cp -rp /mnt/yumserver/* /var/www/html/centos/7/os/x86_64/

四、yum客户端配置yum源为10.10.10.20并测试安装lrzsz软件

##清空yum源配置文件,为了方便测试
[root@centos7 ~]# mv /etc/yum.repos.d/* /tmp/
[root@centos7 ~]# vim /etc/yum.repos.d/CentOS-Base.repo
[base]
name=CentOS-$releasever - Base - 10.10.10.20
failovermethod=priority
baseurl=http://10.10.10.20/centos/$releasever/os/$basearch/
gpgcheck=1
enable=1
gpgkey=http://10.10.10.20/centos/$releasever/os/$basearch/RPM-GPG-KEY-CentOS-7
[root@centos7 ~]# yum makecache
[root@centos7 ~]# yum repolist all
[root@centos7 ~]# yum list all | grep lrzsz
lrzsz.x86_64                                0.12.20-36.el7             base
[root@centos7 ~]# yum -y install lrzsz
[root@centos7 ~]# rpm -qa | grep lrzsz
lrzsz-0.12.20-36.el7.x86_64

五、下载的yum-utils工具软件包存放到yum源仓库并更新

###需要安装两个工具包createrepo(创建/更新yum源仓库RPM软件包)和yum-utils(辅助工具),方便后期更新yum源仓库,如果没有网络可以单独下载RPM软件进行安装
[root@yumserver 7]# yum -y install yum-utils createrepo

##复制yum-utils软件包和相关的依赖包
[root@yumserver ~]# cp -rp python-chardet-2.2.1-3.el7.noarch.rpm python-kitchen-1.1.1-5.el7.noarch.rpm yum-utils-1.1.31-54.el7_8.noarch.rpm /var/www/html/centos/7/os/x86_64/Packages/

###创建yum源仓库并更新
[root@yumserver ~]# createrepo /var/www/html/centos/7/os/x86_64/
Spawning worker 0 with 1987 pkgs
Spawning worker 1 with 1986 pkgs
Workers Finished
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete

六、yum客户端更新yum缓存并安装yum-utils工具

[root@centos7 ~]# yum makecache
[root@centos7 ~]# rpm -qa | grep yum-utils
[root@centos7 ~]# yum list all | grep yum-utils
yum-utils.noarch                        1.1.31-54.el7_8                base
[root@centos7 ~]# yum -y install yum-utils
[root@centos7 ~]# rpm -qa | grep yum-utils
yum-utils-1.1.31-54.el7_8.noarch

特殊操作:
为了方法yum源客户端一健获取yum源配置文件,可以上传一份yum源配置文件到yum源仓库服务器

Yum源仓库服务器操作:

[root@yumserver ~]# mkdir -p /var/www/html/repo/
[root@yumserver ~]# vim /var/www/html/repo/CentOS-Base.repo
[base]
name=CentOS-$releasever - Base - 10.10.10.20
failovermethod=priority
baseurl=http://10.10.10.20/centos/$releasever/os/$basearch/
gpgcheck=1
enable=1
gpgkey=http://10.10.10.20/centos/$releasever/os/$basearch/RPM-GPG-KEY-CentOS-7

yum源客户端操作:

[root@centos7 ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo http://10.10.10.20/repo/CentOS-Base.repo
[root@centos7 ~]# yum makecache
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,445评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,889评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,047评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,760评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,745评论 5 367
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,638评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,011评论 3 398
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,669评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,923评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,655评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,740评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,406评论 4 320
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,995评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,961评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,197评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,023评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,483评论 2 342