解决CentOS7制作本地yum源报错 “Couldn‘t open file /mnt/local/repodata/repomd.xml“

确认问题

配置好本地yum源repo文件,当生成缓存yum makecache 或者 yum repolist all时 报错,主要错误如下:

"Couldn't open file /mnt/local/repodata/repomd.xml"

这里重点看到一个路径 repodata

在你复制的镜像中的Packages中的文件时,是否包含 repodata这个文件夹呢 ?

报错真实原因

很多小伙伴,在复制光驱中的文件时,只拷贝了Packages这个文件夹, 或者只拷贝了Packages文件夹中的软件包,没有拷贝repodata文件夹,导致报错!

repodata 是什么?

repodata/ 目录下的一系列文件,就是yum能否自动解决依赖关系的关键。

repodata/ 目录包含以下几部分:

primary.xml.gz 、filelists.xml.gz 、other.xml.gz 、repomd.xml 、comps.xml

通俗的说,如果没有repodata ,就会直接报错,不能生成缓存文件!

更多repodata 详情点击链接

本地中的repodata 在哪?

解决CentOS7制作本地yum源报错 “Couldn‘t open file /mnt/local/repodata/repomd.xml“_第1张图片

解决办法

删除原来拷贝的内容,重新将 Packagesrepodata 拷贝到你的本地目录!

cp -r Packages/ repodata/ ../local_repo/

local_repo 是我准备的本地仓库的位置 /mnt/local_repo

由于Packages文件夹的内容很多,拷贝时要有耐心!

再次清除所有缓存

yum clean all

重新生成缓存

yum repolist all

或者 

yum makecache

接下来就可以使用 yum 安装软件啦!


以上就是本文的主要内容啦,小伙伴们有任何问题都可以留言交流,一起成长进步哦!

踩坑技术贴持续更新中,铁子们点个关注呗!

你可能感兴趣的:(Linux)