【CentOS7】【配置本地yum源】

转载自:https://zhuanlan.zhihu.com/p/578387359
1本地使用yum源
1.1基于iso镜像的centos源
1.1.1准备iso
#首先看自己使用的linux服务器内核版本
[root@centos-2009 home]# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)

#下载对应版本的linux镜像
#我这里用的时清华大学的开源网站
https://mirrors.tuna.tsinghua.edu.cn/centos/7/isos/x86_64/

#下载CentOS-7-x86_64-Everything-2009.iso内容更全,并传到 /home 路径下
1.1.2备份原yum源的配置文件
#进入yum源的配置文件处
cd /etc/yum.repos.d/
#将所有文件备份,其中CentOS-Base.repo是默认使用的yum源配置文件,CentOS-Media.repo是本地的yum源配置文件
mkdir yum.repos.d.bak
mv CentOS* yum.repos.d.bak
#复制一份CentOS-Media.repo
cd yum.repos.d.bak
cp CentOS-Media.repo ../
1.1.3修改yum源的配置文件
修改CentOS-Media.repo使其启用

vim /etc/yum.repos.d/CentOS-Media.repo
修改内容如下

[c7-media]
name=CentOS-$releasever - Media
baseurl=file:///media/CentOS/
        file:///media/cdrom/
        file:///media/cdrecorder/   #iso文件在这三个目录的任一下即可(注意rpm包不适用此方法,当时没有基于repomd.xml 而失败,暂未尝试将所有yum源文件置于该路径下能否使用)
gpgcheck=1
enabled=1   #0改为1才启用
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
1.1.4挂载
#尝试过直接把iso镜像放到/media/CentOS/路径下而不挂载导致无法获取yum源文件
#挂载iso文件
[root@centos-2009 /]# mkdir -p /media/CentOS
[root@centos-2009 /]# mount -o loop /home/CentOS-7-x86_64-Everything-1908.iso /media/CentOS/
mount: /dev/loop0 写保护,将以只读方式挂载

#查看iso镜像内含的文件
[root@centos-2009 /]# ls /media/CentOS/
CentOS_BuildTag  EULA  images    LiveOS    repodata              RPM-GPG-KEY-CentOS-Testing-7
EFI              GPL   isolinux  Packages  RPM-GPG-KEY-CentOS-7  TRANS.TBL

#清理原来的yum源缓存
yum clean all
#显示已配置的源
yum repolist
#yum安装一个插件试试,如果安装成功,则yum挂载成功,原来的iso镜像可以删除了

1.2基于rpm的centos源和epel源
1.2.1下载yum源全量文件
直接下载rpm包(Everything.iso镜像存有全量的centos源rpm包)
centos源 下载页面的所有内容:https://mirrors.tuna.tsinghua.edu.cn/centos/7/os/x86_64/
epel源 下载页面的所有内容:https://mirrors.tuna.tsinghua.edu.cn/epel/7/x86_64/
epel源 是企业级centos的yum源,有更多的插件
#不建议直接下载部分rpm包,可能缺失依赖导致安装时失败
1.2.2centos源
将下载的centos源全部内容放置任意目录下 以 /home 为例

修改文件CentOS-Base.repo

vim CentOS-Base.repo
修改内容如下

enabled=0 #将此处修改为0,弃用从网络下载yum文件
修改文件CentOS-Media.repo

vim CentOS-Media.repo
修改内容如下

[c7-media]
name=CentOS-$releasever - Media
baseurl=file:///media/CentOS/ #将本地yum源文件置于此路径下
file:///media/cdrom/
file:///media/cdrecorder/
file:///home/CentOS/ #或者自己加一个路径
gpgcheck=1
enabled=1 #将此处修改为1,启用从本地下载yum源文件
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
更新yum源配置

#清除原来的yum缓存
yum clean all
#显示已配置的源
yum repolist

#如果报错“6d0c3a488c282fe537794b5946b01e28c7f44db79097bb06826e1c0c88bad5ef-primary.sqlite.bz2”Not Found
cd /usr/local/nginx/html/centos7/repodata
cp 6d0c3a488c282fe537794b5946b01e28c7f44db79097bb06826e1c0c88bad5ef 6d0c3a488c282fe537794b5946b01e28c7f44db79097bb06826e1c0c88bad5ef-primary.sqlite.bz2
yum repolist
2yum源服务器
2.1基于nginx代理
依安装文档部署nginx

修改文件CentOS-Base.repo

vim /usr/local/nginx/conf/nginx.conf
修改内容如下

#修改安装路径下的配置文件的server部分
server {
listen 80;
server_name localhost;

    #charset koi8-r;

    #access_log  logs/host.access.log  main;

    location / {
        root   html;
        autoindex on;   #使nginx自动获取文件目录
        index  index.html index.htm;
    }

2.2基于iso镜像的centos源
#对iso镜像做挂载处理
[root@centos-1804 home]# mount -o loop /home/CentOS-7-x86_64-Everything-2009.iso /usr/local/nginx/html/centos7/
mount: /dev/loop1 写保护,将以只读方式挂载

#访问nginx看是否有yum源文件
2.3基于rpm的centos源和epel源
基于1.2
将全部的centos源文件命名为centos7,放在nginx的html路径下
将全部的epel源文件命名为epel7,放在nginx的html路径下

#访问nginx看是否有yum源文件
2.4修改其他服务器的yum配置
修改文件CentOS-Base.repo

vim CentOS-Base.repo
修改内容如下

#将CentOS-Base.repo的内容全部替换

[centos7]
name=centos7
baseurl=http://192.168.42.222/centos7/ #改为自己的IP地址
gpgcheck=0
enabled=1

[epel7]
name=centos7
baseurl=http://192.168.42.222/centos7/
gpgcheck=0
enabled=1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值