Repo 超时了

  下载Android源码是比较简单的事情,我在自己家的电脑上轻松搞定。具体下载步骤此处略去不表,详细步骤请参考Android官网的《Get Android Source Code》一章。

    参考网址:http://source.android.com/source/download.html


    然而奇怪的是,我在公司的电脑上怎么也下载不下来。我的环境是Windows7下使用VirtualBox虚拟出来的x64 Ubuntu 10.10。当我执行到下面一步时,错误发生了:

    $ repo init -u git://android.git.kernel.org/platform/manifest.git -b gingerbread


    repo报告的错误内容大概是:

 

    connected time out ...

    ...

    fatal: Unable to look up android.git.kernel.org (port 9418) (Name or service not known)

    

    很显然,Repo找不不到android.git.kernel.org服务器!!!!!


    然而有三件事情让我觉得这事实在是诡异万分:


        第一、我的Win7系统和Ubuntu系统,使用网页浏览器都能访问网址  http://android.git.kernel.org

 

        

        第二、我所在的项目组有一另外一台机器,装的是x64bit Ubuntu10.10系统,它能成功的下载Android源Source (之前我一直是依靠它来下载Source的)。

 


       第三、我尝试过不使用VirtualBox虚拟Ubuntu系统,而是直接装双系统:Win7 + 32bit Ubuntu 10.04。但仍然出现相同的错误。


  我苦思敏想中.......


    只剩下一种可能了,我机器的9418端口被封掉了。


  因为公司出于各种原因考虑,给我们开的端口非常有限,记得上次为了调查实现gmail邮箱需要用到SSH这玩意儿,特地向网管申请开了SSH的端口的.......


  我信心十足的去找网管。果然,我项目组那台机器端口比我的机器的端口开的要多啊!只好请网管帮忙开一下9418端口。


  然而,回来一试,我便再次绝望了,脑细胞死了一个军团的数量,error依旧向我笑啊......Repo依然是connected time out!

 

  我苦思敏想中.......


  这时我想到了一点:9418的端口没戏了,但是不是还有http的80端口吗?死马当成活马医吧:


  Step 1. 编辑 /home/username/bin/repo文件

  -  REPO_URL='git://android.git.kernel.org/tools/repo.git' 

+ REPO_URL='http://android.git.kernel.org/tools/repo.git'


    Step 2. 运行新的命令

$ repo init -u http://android.git.kernel.org/platform/manifest.git -b gingerbread


  Step 3. 修改文件.repo/manifests/default.xml

将   fetch="git://android.git.kernel.org/"

改成fetch="http://android.git.kernel.org/"


    Step 4. 运行命令

repo sync


  搞定!!!



<think>好的,我现在需要处理用户关于CentOS 7.9仓库配置的问题。用户提到在安装RabbitMQ 3.8.9时遇到了仓库配置的问题,还引用了之前关于安装Erlang的信息。首先,我得回想CentOS的仓库配置常见问题,以及如何解决它们。 首先,CentOS 7默认的仓库可能不包含某些较新的软件包,比如Erlang或RabbitMQ。用户可能遇到的情况包括无法找到软件包、仓库地址失效或者依赖问题。常见的解决方案包括启用EPEL仓库、添加第三方仓库如Remi,或者手动配置.repo文件。 接下来,我需要确认CentOS 7.9的默认仓库情况。默认情况下,Base和Updates仓库应该可用,但可能缺少一些软件。用户可能尝试过使用yum安装但失败,这时候需要检查仓库是否启用,或者是否有网络问题导致无法访问仓库。 另外,用户之前安装Erlang时可能已经添加了EPEL或其他仓库,但在7.9版本中可能配置有变化。例如,EPEL仓库的启用方法是通过安装epel-release包,但需要确认是否适用于7.9版本。此外,镜像站点的更换也是一个常见解决方案,比如使用阿里云或清华大学的镜像,可以加快下载速度并提高可靠性。 可能的问题还有仓库配置文件中的错误,比如错误的baseurl或gpgcheck设置。需要指导用户检查/etc/yum.repos.d/下的文件,使用yum clean all和yum makecache来刷新缓存。 最后,生成相关问题需要考虑用户在配置仓库后可能遇到的进一步问题,比如依赖冲突、优先级设置,或者特定软件包的安装步骤。例如,如何安装特定版本的Erlang,或者配置多个仓库时的优先级管理。</think>### CentOS 7.9 仓库配置问题与解决方案 #### 1. 默认仓库失效问题 CentOS 7.9 官方仓库可能出现连接超时或镜像失效的情况。可通过以下命令验证仓库状态: ```bash $ yum clean all $ yum repolist ``` 若显示 `repolist: 0`,说明仓库配置异常。建议更换镜像源: ```bash $ sudo sed -e 's|^mirrorlist=|#mirrorlist=|g' \ -e 's|^#baseurl=http://mirror.centos.org|baseurl=https://mirrors.aliyun.com|g' \ -i.bak \ /etc/yum.repos.d/CentOS-*.repo $ sudo yum makecache ``` 阿里云镜像可提升下载稳定性[^1]。 #### 2. EPEL 仓库配置 安装 EPEL 扩展仓库以获取更多软件包: ```bash $ sudo yum install epel-release ``` 若遇到 GPG 密钥错误: ```bash $ sudo rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 ``` #### 3. 第三方仓库配置(以 Remi 为例) 对于特定软件(如 PHP 或 Erlang),需要添加 Remi 仓库: ```bash $ sudo yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm ``` 验证仓库优先级: ```bash $ yum repolist | grep remi ``` #### 4. 手动创建仓库文件 在 `/etc/yum.repos.d/` 目录下新建 `.repo` 文件,例如 `rabbitmq.repo`: ```ini [rabbitmq_erlang] name=RabbitMQ Erlang RPM baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/$basearch gpgcheck=1 gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkey enabled=1 ``` 完成后执行: ```bash $ sudo yum clean all && sudo yum makecache ``` #### 5. 典型错误排查 - **错误:** `Could not resolve host: mirror.centos.org` 解决方案:检查 DNS 设置或使用 `ping` 测试网络连通性 - **错误:** `Package XXX is available, but is another version` 解决方案:使用 `yum --showduplicates list <package>` 查看可用版本,或通过 `yum-priorities` 插件管理仓库优先级
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值