Apt“无法找到分发模板”错误

Apt“无法找到分发模板”错误

当我尝试使用 apt-get 安装任何东西时出现以下错误:

Traceback (most recent call last):
  File "/usr/bin/add-apt-repository", line 60, in <module>
    sp = SoftwareProperties()   
  File "/usr/lib/python2.6/dist-packages/softwareproperties/SoftwareProperties.py", line 90, in __init__
    self.reload_sourceslist()
  File "/usr/lib/python2.6/dist-packages/softwareproperties/SoftwareProperties.py", line 538, in reload_sourceslist
    self.distro.get_sources(self.sourceslist)    
  File "/usr/lib/python2.6/dist-packages/aptsources/distro.py", line 90, in get_sources
    raise NoDistroTemplateException("Error: could not find a "
aptsources.distro.NoDistroTemplateException: Error: could not find a distribution template

知道这是什么意思以及如何解决吗?

答案1

很容易修复,只需这样做

gksudo gedit /etc/lsb-release

然后编辑打开的文件,使其看起来像这样

DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=10.04
DISTRIB_CODENAME=karmic
DISTRIB_DESCRIPTION="Ubuntu Karmic Koala"

记得输入你正在使用的 ubuntu 版本。我正在使用 karmic koala,所以我输入了它。

您可以在底部获取列表
http://en.wikipedia.org/wiki/Ubuntu_%28operating_system%29

保存 lsb-release 文件后返回终端,然后就可以添加 apt-repository

答案2

的内容/etc/lsb-release无效。您需要重新安装该base-files包才能恢复其预期内容。遗憾的是,您不能直接使用apt-get。相反,

  1. https://launchpad.net/ubuntu/+source/base-files并查找适用于你的 Ubuntu 版本的部分,

  2. 下载适用于您的发行版和架构的最新版本的软件包,

  3. 跑步:

    sudo dpkg -i /your/path/to/base-files_*.deb
    
  4. 使用以下方式进行测试运行

    sudo apt-get install --reinstall base-files
    

答案3

我通过破解一个python文件解决了这个问题,假装我的发行版与前一个相同:

for template in self.sourceslist.matcher.templates:
    if( template.name == 'bionic'):  # << added line
        template.name = 'focal';     # << added line
    if (self.is_codename(template.name) and...

/usr/lib/python3/dist-packages/aptsources/distro.py

相关内容