Błąd „Nie można znaleźć szablonu dystrybucji”

15

Kiedy próbuję zainstalować cokolwiek przy użyciu apt-get, pojawia się następujący błąd:

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

Wiesz, co to znaczy i jak to rozwiązać?

Ryan L. Watson
źródło
Czy potrafisz pokazać dokładne polecenie, które daje tę odpowiedź?
enzotib
Spróbuj użyć aptitude.
amra

Odpowiedzi:

23

Łatwy do napraw Po prostu zrób to

gksudo gedit /etc/lsb-release

Następnie edytuj plik, który zostanie otwarty, aby wyglądał tak

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

Pamiętaj, aby podać, której wersji ubuntu używasz. Używam karmicznej koali, więc to włożyłem.

Możesz uzyskać listę tutaj na dole
http://en.wikipedia.org/wiki/Ubuntu_%28operating_system%29

Następnie wróć do terminala po zapisaniu pliku wydania lsb i powinieneś móc dodać repozytorium apt-apt

Joshua Robison
źródło
Tylko spostrzeżenie: Uważaj na wielkie i małe litery!
4
Zdecydowanie nie powinieneś tego robić. Ten plik jest częścią pakietu plików podstawowych i nie należy go edytować. Zamiast tego należy odpowiednio obniżyć lub uaktualnić pakiet (i przypiąć drugi pakiet, który spowodował zmianę plików podstawowych).
Tamás Szelei
Brzmi świetnie @fish, czy chcesz napisać łatwe krok po kroku wyjaśnienie, jak to zrobić i opublikować go tutaj jako odpowiedź?
Joshua Robison,
Oto świetna odpowiedź, która obejmuje prawie wszystkie etapy: askubuntu.com/a/135472/3449
Tamás Szelei
5

Treść /etc/lsb-releasejest nieprawidłowa. Musisz ponownie zainstalować base-filespakiet, aby przywrócić jego zamierzoną zawartość. Niestety nie możesz po prostu użyć apt-getdo pracy. Zamiast,

  1. przejdź do https://launchpad.net/ubuntu/+source/base-files i poszukaj sekcji dla swojej wersji Ubuntu,

  2. pobierz najnowszą wersję pakietu dostępną dla twojego wydania i architektury,

  3. biegać:

    sudo dpkg -i /your/path/to/base-files_*.deb
    
  4. Wykonaj test z

    sudo apt-get install --reinstall base-files
    
David Foerster
źródło