CentOS7配置本地yum源和在线yum源

一.配置本地yum源

1.把默认的yum源备份,并建立新的yum源

cd /etc/yum.repos.d

mv . repobackup

2.挂载

mount /dev/cdrom /mnt/

3.编写repo文件并指向镜像的挂载目录

vi local.repo

[local]

name = local

baseurl = file:///mnt/ #挂载目录

enabled = 1 #1为启动,0为不启动

gpgcheck = 1 #检查签名,1为检测,0 为不检测

4.清除缓存

yum clean all

yum makecache #把yum缓存存到本地,加速软件的搜索好安装

yum list

二.配置在线yum源

1.把默认的CentOS yum 源修改为国内的aliyun yum源

1).下载aliyun yum源repo文件(对应自己的系统版本下载即可,需要有外网)

查看版本-----> uname -a

CentOS 7 aliyun yum源

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

2).清除缓存

yum clean all

yum makecache

yum list

三.配置本地yum源和在线yum源共存

  当既有本地yum源又有aliyun源的时候,我们在装软件包的时候当然希望先用本地的yum源去安装,

本地找不到可用的包时再使用aliyun源去安装软件,这里就涉及到了优先级的问题,

yum提供的插件yum-plugin-priorities.noarch可以解决这个问题

1.查看是否安装了yum-plugin优先级插件

rpm -qa |grep yum-plugin-

2.如果没有安装,就安装插件

yum -y install yum-plugin-priorities.noarch

3.查看插件是否启用

cat /etc/yum/pluginconf.d/priorities.conf

[main]

enabled = 1 # 1为启动,0 为禁止

4.修改本地yum源优先使用

vi local.repo

最后一行加上

priority =1 #数字越小优先级越高

[epel]

baseurl=https://mirrors.aliyun.com/epel/7Server/x86_64/

enabled = 1

gpgcheck = 1

priority = 2

5.验证安装包的数量

执行yum repolist all 可显示所有仓库包

四.配置yum源时的报错处理

=========yum 在线安装时=====

(1).如果碰到安装时找不到包, [Errno 256] No more mirrors to try,出现此问题时

解决办法是:

1.先执行----->yum clean all 清理软件源

2.yum makecache ------>建立元数据缓存

3.重新安装软件 ----> yum -y install 包名

(2).yum 安装软件时报错:

1.Cannot find a valid baseurl for repo: base/7/x86_64

解决方法:

检查下虚拟机能不能连接外网,在网卡配置文件里加上DNS1 = 8.8.8.8,DNS2 =114.114.114.114

重启网络服务----->systemctl restart network

2.您已启用软件包 GPG 签名检查,这样很好。不过您尚未安装任何 GPG 公钥。请下载您希望安装的软件签名公钥并安装。

假设公钥已下载,安装命令是:

rpm --import public.gpg.key

或者,在软件源配置中,使用 'gpgkey' 选项指定软件源使用的公钥 URL,这样 yum 会自动安装它。

详情请联系发行版或软件包制作人。

问题源:local

解决办法:

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7