Znalezienie wcześniejszej wersji do obniżenia do

10

Na moim serwerze Debian zaktualizowałem pakiet SQLite do wersji, 3.7.7ale odkryłem, że zawiera on krytyczny błąd, który psuje kilka rzeczy, w tym moje repozytorium Subversion. Chciałbym więc przywrócić poprzednią wersję, z której korzystałem. Ale:

  • Nie mam pojęcia, co to była wersja (zakładam, że tak 3.7.6.3, ale nie jestem pewien).
  • Jedyną inną dostępną wersją pakietu SQLite aptitudejest ta, 3.5.9.6która jest za wcześnie na pakiet Subversion, którego używam (wymaga co najmniej 3.6).

Jak mogę zidentyfikować wersję SQLite, której używałem i która może nadal znajdować się w pamięci podręcznej na moim komputerze, i zmienić ją na starszą? Lub, w przeciwnym razie, jak mogę ustalić, aptitudeskąd pobrać wersje pośrednie tego pakietu?

Victor Nicollet
źródło

Odpowiedzi:

8

Pamięć podręczna APT trwa /var/cache/apt/archives. Jeśli masz odpowiednią wersję pakietu, możesz go zainstalować za pomocą dpkg -i /var/cache/apt/archives/sqlite3-VERSION.deb.

Jeśli go nie masz, testowanie ma obecnie wersję 3.7.6.3-1 (do pobrania z dowolnego serwera lustrzanego Debiana), a stabilna ma wersję 3.7.3-1 ; lub możesz znaleźć (prawie) każdą wersję, która kiedykolwiek była w Debianie na snapshot.debian.org . Ponieważ jest to pilna potrzeba, najłatwiej będzie pobrać pakiet ręcznie i zainstalować go dpkg(ale możesz również zdefiniować konkretną datę migawki jako źródło APT, jak wyjaśniono na stronie głównej snapshot.do).

Możesz dowiedzieć się, która wersja była instalowana, przeglądając logi dpkg /var/log/dpkg.loglub loguje się APT /var/log/aptlub loguje Aptitude /var/log/aptitude.

W Aptitude zaznacz wersję buggy jako zabronioną do instalacji: Fwprowadź interaktywny interfejs użytkownika lub aptitude forbid-versioninteraktywnie. Jeśli błąd nie zostanie naprawiony w następnej wersji, oznacz pakiet jako „wstrzymany”, aby zapobiec automatycznym aktualizacjom do odwołania ( =klawisz lub aptitude holdpolecenie).

Gilles „SO- przestań być zły”
źródło
Działa to tylko z dwiema drobnymi zmianami (szuka lib sqlite i platformy amd64). dpkg -ibył rzeczywiście najszybszym sposobem.
Victor Nicollet
2

plik /var/log/dpkg.logma historię zmian. Zrób grep na to, aby znaleźć odpowiedź.

bagavadhar
źródło
To rzeczywiście potwierdza, że ​​działałem 3.7.6.3-1. Teraz muszę to znaleźć :-)
Victor Nicollet,