【问题标题】:"Repository does not have a release file" error [closed]“存储库没有发布文件”错误[关闭]
【发布时间】:2019-05-16 22:11:08
【问题描述】:

我正在尝试在 Ubuntu 上安装 ROS。我收到此错误:

   sudo apt-get update
Hit:1 http://pk.archive.ubuntu.com/ubuntu cosmic InRelease
    Hit:2 http://pk.archive.ubuntu.com/ubuntu cosmic-updates InRelease
    Hit:3 http://pk.archive.ubuntu.com/ubuntu cosmic-backports InRelease
    Get:4 http://security.ubuntu.com/ubuntu cosmic-security InRelease [83.2 kB]
    Ign:5 http://packages.ros.org/ros/ubuntu cosmic InRelease Err:6 http://packages.ros.org/ros/ubuntu cosmic Release 404 Not Found [IP: 64.50.236.52 80] Reading package lists... Done
    E: The repository 'http://packages.ros.org/ros/ubuntu cosmic Release' does not have a Release file. N: Updating from such a repository can't be done securely, and is therefore disabled by default. N: See apt-secure(8) manpage for repository creation and user configuration details.

【问题讨论】:

    标签: ubuntu ros


    【解决方案1】:

    here 所述,您需要(以root 身份)编辑文件/etc/apt/sources.list(最简单的方法是输入sudo gedit /etc/apt/sources.list)。在提到http://packages.ros.org/ros/ubuntu 的行中,您需要在deb 一词之后添加[trusted=yes](您可能需要将其作为单独的词添加)。然后保存文件并重试。

    【讨论】:

    • 我面临与 'ppa.launchpad.net/gencfsm/ppa/ubuntu' 相同的问题;我在 ubuntu eoan 19.10 上,但是当我在 >>sources.list 上搜索 ppa 时,它没有。请帮助
    • 它可能在/etc/apt/sources.list.d 的文件中。查看那个目录。
    • 如果您的 CI 构建代理发生这种情况怎么办?
    • @knocte 如果您设法在 CI 代理上运行 sudo 命令,我看不出问题 - 您可以做任何事情。无论如何,这个问题并不是针对这个问题的。
    • 我的意思是用命令编辑文件真的很难,除非你开始做一些sed杂耍之类的;我想知道如何轻松解决这个问题
    【解决方案2】:

    确保您的 /etc/apt/sources.list 包含 http://old-releases.ubuntu.com 而不是 in.archive

    【讨论】:

      【解决方案3】:

      正如其他人所提到的,这个问题可能来自您的 /etc/apt/sources.list,但有可能 问题在于您的硬盘。我通过清理一些空间解决了同样的问题。

      当您的硬盘空间不足时,在删除某些文件之前不会更新您的计算机。

      【讨论】:

      • 404 错误绝不是与磁盘空间相关的问题。就是请求被发送到一个不存在的地方。
      • 我在 Ubuntu 中遇到了完全相同的问题,屏幕上出现了完全相同的错误。正如我所提到的,sources.list 文件可能存在问题,但如果不是问题,请同时检查您的硬盘。 @rm-
      【解决方案4】:

      我打开了我的软件和更新程序 并从我的国家切换到主服务器,如下所示:

      完成此操作并再次运行 sudo apt update 突击队后,我的问题就消失了。

      【讨论】:

      • 对我来说,这会导致一条有关内部错误的消息,并提示将详细信息发送给开发人员,并且在我按下发送后它就卡住了。我没有准确记录问题所在的包,但名称中包含了 gtk。我现在没有时间记录更多细节。我将暂时保留它,但如果此评论获得投票,那么我们大家可以进一步调查。
      【解决方案5】:

      您需要将存储库目标更新为 Ubuntu 的 Eoan Ermine (19.10) 版本。可以这样做:

      sudo sed -i -e 's|disco|eoan|g' /etc/apt/sources.list
      sudo apt update
      

      【讨论】:

      • 谢谢。现在变成 sudo sed -i -e 's|eoan|focal|g' /etc/apt/sources.list
      • 有没有办法自动为任何 X 版本到当前版本做到这一点?
      • 感谢 null - 您的评论为我解决了问题。谁能解释为什么会发生这个问题?突然我的机器因此不再更新了。
      • @Enfors 这是因为 Ubuntu 19.10 "Eoan" 现在已弃用,此命令将您的存储库目标切换到新的 Ubuntu 20.04 "Focal"
      • @JoãoPimentelFerreira sudo sed -i -e 's|X|$(lsb_release -cs)|g' /etc/apt/sources.list
      【解决方案6】:

      就我而言,原因是 Canonical 不再支持 Ubuntu 版本。 我可以通过 2 个步骤升级到仍受支持的 LTS:

      1) 手动将 repo 链接从“in.ubuntu”更新为“old-releases.ubuntu”。 1.1) 安装所有未完成的更新 2)do-release-upgrade 能够从这一点开始并进行实际升级

      恕我直言,这是一种比将存储库更新到下一个支持的 ubuntu 更安全的方法,因为 do-release-upgrade 有机会防止可能失败的升级,并且可以为您诊断问题。

      【讨论】:

        【解决方案7】:

        我已经有这个问题几个星期了,最后决定坐下来尝试解决它。由于我主要是 Windows 用户,因此我对配置文件编辑不感兴趣。

        在“clickyness”的配合中,我注意到 ubuntu 服务器位置设置为“英国”。我把它切换到“主服务器”,嘿,突然……它都盯着更新了。

        因此,似乎区域化服务器(至少对于英国而言)的支持窗口非常有限,因此如果您是不常使用的用户,它可能没有从当前版本到最新版本的有效升级路径。

        编辑: 我只是在发布后才注意到以前的回复。 100% 同意。

        【讨论】:

          【解决方案8】:

          我使用此代码并建议您:

          1) sudo sed -i -e 's|disco|eoan|g' /etc/apt/sources.list
          2) sudo apt update
          

          【讨论】:

          • 之前已经给出了同样的答案。
          【解决方案9】:

          如果 sudo apt-get update 没有为您执行此操作,则可能是某些软件包未能更新到与存储库相关的错误。

          对我来说,所有这些都发生在(软件更新 --> 其他软件)中。您可以使用“删除”将它们删除,缓存将成功刷新。 否则

          sudo apt-get clean
          apt-get autoremove 
          

          值得尝试。

          【讨论】:

            【解决方案10】:

            #For Unable to 'apt update' my Ubuntu 19.04

            不受支持的旧版本(如 11.04、11.10 和 13.04)的存储库被移至存档服务器。 http://old-releases.ubuntu.com 有可用的存储库。

            首先分解这个文件

            cp  /etc/apt/sources.list /etc/apt/sources.list.bak
                sudo sed -i -re 's/([a-z]{2}\.)?archive.ubuntu.com|security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list
            

            然后

            sudo apt-get update && sudo apt-get dist-upgrade
            

            【讨论】:

            • 这对我有帮助,谢谢!我仍然建议在运行 sed 之前创建备份:sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
            【解决方案11】:

            如果您遇到“EC2 实例”或“Ubuntu 实例”的问题

            然后首先执行此操作 sudo apt-get upgrade 然后再次尝试按照文档中提到的相同方式安装任何东西。

            【讨论】:

              猜你喜欢
              • 2018-04-18
              • 2023-02-19
              • 2020-05-31
              • 1970-01-01
              • 1970-01-01
              • 2021-10-18
              • 2022-10-19
              • 2020-01-09
              • 1970-01-01
              相关资源
              最近更新 更多