技术交流QQ群:①185473046   ②190706903   ③203744115   网站地图
登录

下次自动登录
现在的位置: 首页CentOS>正文
CentOS下使用createrepo制作离线yum源
2023年01月28日 CentOS 暂无评论 ⁄ 被围观 3,297次+

1、先要有一台能够联网的服务器,这里我们使用CentOS-7.x系统

2、配置yum文件,设置install安装时自动将rpm包保存到本地

vi /etc/yum.conf

cachedir=/var/cache/yum/$basearch/$releasever

keepcache=1(0:不下载 ,1:下载至本地 ),需要改成1

:wq! #保存退出

3、设置好之后,我们执行软件包安装

#比如我们需要安装编译nginx的依赖包

yum install make gcc gcc-c++ perl zlib-devel

4、安装完成后,我们去这个路径下,就可以看到该install安装的rpm包都被保存到该目录下。

注意:有3个目录下面的rpm包都需要拷贝

cd /var/cache/yum/x86_64/7/base/packages

cd /var/cache/yum/x86_64/7/extras/packages

cd /var/cache/yum/x86_64/7/updates/packages

5、拷贝rpm包

#创建本地rpm包存放目录

mkdir -p /data/yum/x86_64/7/base/packages

mkdir -p /data/yum/x86_64/7/extras/packages

mkdir -p /data/yum/x86_64/7/updates/packages

mv /var/cache/yum/x86_64/7/base/packages/* /data/yum/x86_64/7/base/packages

mv /var/cache/yum/x86_64/7/extras/packages/* /data/yum/x86_64/7/extras/packages

mv /var/cache/yum/x86_64/7/updates/packages/* /data/yum/x86_64/7/updates/packages

6、制作离线源

#安装createrepo

yum install createrepo

#rpm安装

rpm -ivh deltarpm-3.6-3.el7.x86_64.rpm

rpm -ivh python-deltarpm-3.6-3.el7.x86_64.rpm

rpm -ivh libxml2-2.9.1-6.el7_9.6.x86_64.rpm --nodeps

rpm -ivh libxml2-python-2.9.1-6.el7_9.6.x86_64.rpm --nodeps

rpm -ivh createrepo-0.9.9-28.el7.noarch.rpm --nodeps

#生成repodata文件

createrepo /data/yum/x86_64/7/base/packages

createrepo /data/yum/x86_64/7/extras/packages

createrepo /data/yum/x86_64/7/updates/packages

#有新添加的rpm包,需要运行

createrepo --update /data/yum/x86_64/7/base/packages

createrepo --update /data/yum/x86_64/7/extras/packages

createrepo --update /data/yum/x86_64/7/updates/packages

#压缩

cd /data

tar -zcvf yum.tar.gz yum

#下载离线包yum.tar.gz上传到需要安装的服务器上

7、使用离线源

#在一台不能联网的服务器上操作

#上传制作好的yum.tar.gz文件并解压到/data目录

mkdir -p /data

tar zxvf yum.tar.gz -C /data

#备份

mv /etc/yum.repos.d /etc/yum.repos.d.bak

mkdir -p /etc/yum.repos.d

cd /etc/yum.repos.d

vi /etc/yum.repos.d/localhost-yum.repo

[localhost-base]

name=localhost-base

baseurl=file:///data/yum/x86_64/7/base/packages

gpgcheck=0

enabled=1

proxy=_none_

[localhost-extras]

name=localhost-extras

baseurl=file:///data/yum/x86_64/7/extras/packages

gpgcheck=0

enabled=1

proxy=_none_

[localhost-updates]

name=localhost-updates

baseurl=file:///data/yum/x86_64/7/updates/packages

gpgcheck=0

enabled=1

proxy=_none_

:wq! #保存退出

#离线安装

yum clean all

yum repolist

yum install make gcc gcc-c++ perl zlib-devel

#扩展阅读1

替换centos7.x的yum源

1、备份默认yum源

mv /etc/yum.repos.d /etc/yum.repos.d.bak

mkdir -p /etc/yum.repos.d

#新增CentOS 7.9的软件源repo文件,如下:

vi /etc/yum.repos.d/centos7.9.repo

[base]

name=CentOS - Base

baseurl=http://192.168.21.79/centos/7/os/$basearch/

gpgcheck=0

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

enabled=1

[updates]

name=CentOS - Updates

baseurl=http://192.168.21.79/centos/7/updates/$basearch/

gpgcheck=0

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

enabled=1

[extras]

name=CentOS - extras

baseurl=http://192.168.21.79/centos/7/extras/$basearch/

gpgcheck=0

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

enabled=1

[epel]

name=CentOS - epel

baseurl=http://192.168.21.79/centos/7/epel/$basearch/

gpgcheck=0

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

enabled=1

:wq! #保存退出

#更新yum源仓库

yum clean all

yum makecache

#测试

yum install wget

yum install telnet

#centos 7.x中yum源默认使用的是python2.7

[root@localhost ~]# cat /usr/bin/yum

#!/usr/bin/python

#扩展阅读2

使用yum源缓存安装依赖包

1、开启yum缓存

vi /etc/yum.conf

添加修改 keepcache=1

:wq! #保存退出

2、开启缓存后,用yum install安装的软件包会在/var/cache/yum或者/var/cache/dnf中保存

3、将/var/cache/yum或者/var/cache/dnf中的文件打包,恢复到要用的离线系统中相同位置

4、yum -C install 软件包名

5、rpm -Uvh --force --nodeps *rpm   #安装所有rpm软件包

至此,CentOS下使用createrepo制作离线yum源安装完成。

     

  系统运维技术交流QQ群:①185473046 系统运维技术交流□Ⅰ ②190706903 系统运维技术交流™Ⅱ ③203744115 系统运维技术交流™Ⅲ

给我留言

您必须 [ 登录 ] 才能发表留言!



Copyright© 2011-2024 系统运维 All rights reserved
版权声明:本站所有文章均为作者原创内容,如需转载,请注明出处及原文链接
陕ICP备11001040号-3