本文针对Fedora 20安装时基础软件仓库出错问题,分析原因并给出解决方案,问题表现为安装过程中无法连接软件仓库,导致依赖包下载失败,主要原因为网络配置异常、镜像源失效、仓库配置文件错误或防火墙/SELinux拦截,解决步骤包括:检查网络连通性;替换为国内稳定镜像源(如阿里云、网易);校验仓库配置文件语法;临时关闭防火墙(systemctl stop firewalld)及SELinux(setenforce 0);执行yum clean all清理缓存,通过以上操作可恢复仓库正常访问,确保安装顺利完成。
问题背景
Fedora 20作为Red Hat社区推出的Linux发行版,以其新特性和稳定性受到不少用户喜爱,但在安装过程中,部分用户可能会遇到“安装基础软件仓库时出错”的提示,导致安装流程中断,无法完成系统部署,这一问题通常与软件仓库(Repository)的配置、网络连接、介质完整性等因素相关,本文将结合常见原因提供详细排查与解决方法。
错误原因分析
“基础软件仓库出错”的本质是安装程序无法从配置的软件源获取必要的安装包信息或文件,具体原因可归纳为以下几类:
网络连接问题
安装过程中,安装程序需从软件仓库下载安装元数据(如repomd.xml)和基础包,若网络配置错误(如DNS解析失败、网关异常)、网络中断,或目标软件仓库服务器不可达(如国外镜像访问缓慢/超时),均会导致仓库加载失败。

软件仓库镜像源失效或配置错误
Fedora 20的官方生命周期已于2015年结束,官方软件仓库(如fedora、updates等)已下线,默认配置的镜像源可能无法访问,若用户未手动更换为可用的第三方镜像源(如国内镜像),或镜像源URL配置错误,会导致仓库“不可用”。
安装介质损坏
若通过U盘、光盘等本地介质安装,ISO文件下载不完整、制作启动盘时校验失败(如使用dd命令未正确写入),或介质本身有物理损坏,会导致安装程序无法读取本地软件仓库文件,触发错误。
防火墙或SELinux拦截
安装过程中,系统防火墙(如firewalld或iptables)或SELinux安全策略可能拦截安装程序与软件仓库的网络通信,导致连接被拒绝。
系统时间错误
若安装时系统时间与实际时间偏差过大(如超过±30分钟),可能导致SSL证书验证失败(软件仓库使用HTTPS时),连接被安全策略中断。
软件包缓存或依赖冲突
若安装前系统已存在部分Yum缓存文件,或依赖的软件包版本冲突,可能导致安装程序在加载仓库元数据时解析失败。
解决方法
检查网络连接
- 有线网络:确保网线已插紧,或交换机/路由器正常工作。
- 无线网络:在安装界面按
Alt+F2切换到终端,执行iwconfig查看无线网卡状态,用wpa_supplicant连接WiFi(需预先知道网络密码)。 - 测试连通性:在终端执行
ping www.baidu.com检查网络是否通,若不通,尝试配置DNS(如echo "nameserver 114.114.114.114" > /etc/resolv.conf)。
更换为可用的软件仓库镜像源
由于Fedora 20官方仓库已下线,需手动替换为第三方镜像源(如阿里云、网易等),操作步骤:
-
在安装界面按
Alt+F2打开终端,进入软件仓库配置目录:cd /etc/yum.repos.d
-
备份原始配置文件(防止后续需要):
cp Fedora-20-*.repo Fedora-20-*.repo.bak
-
创建新的仓库配置文件(如
Fedora-20-al.repo如下(以阿里云镜像为例):[fedora-20-al] name=Fedora 20 $releasever - Base - Aliyun baseurl=http://mirrors.aliyun.com/fedora/releases/20/Everything/$base/os/ enabled=1 gpgcheck=0 # 因Fedora 20公钥可能失效,暂时关闭校验(安装后可尝试开启) [fedora-updates-20-al] name=Fedora 20 $releasever - Updates - Aliyun baseurl=http://mirrors.aliyun.com/fedora/updates/20/$base/os/ enabled=1 gpgcheck=0
-
保存文件后,执行
yum clean all清理缓存,再尝试重新加载仓库。
校验安装介质完整性
若通过本地介质安装,需确认ISO文件完整:
- 下载ISO后,与镜像站提供的MD5/SHA256值对比(如使用
md5sum Fedora-20-x86_64-DVD.iso校验)。 - 若U盘制作,建议使用
Fedora Media Writer工具,确保正确写入;若已用dd命令,检查dd if=/path/to/Fedora-20.iso of=/dev/sdX bs=4M status=progress中的/dev/sdX是否为U盘设备(避免误写硬盘)。
临时关闭防火墙和SELinux
- 关闭防火墙:在终端执行
systemctl stop firewalld
- 临时禁用SELinux:修改
/etc/selinux/config文件,将SELINUX=enforcing改为SELINUX=permissive(安装后需根据需求重新配置)。
同步系统时间
- 安装时若时间错误,执行
ntpdate pool.ntp.org
若提示
no server suitable found,可更换时间服务器(如ntpdate 210.72.145.44,中国国家授时中心服务器)。
清理软件包缓存并重试
- 在终端执行
rm -rf /var/cache/yum/* yum clean all
清理缓存后,重新尝试安装流程。
注意事项
- 镜像源选择:优先选择国内镜像(如

