![Wie identifiziere ich die Pakete, die mit einer toten Quelle in Debian verknüpft sind?](https://rvso.com/image/1502917/Wie%20identifiziere%20ich%20die%20Pakete%2C%20die%20mit%20einer%20toten%20Quelle%20in%20Debian%20verkn%C3%BCpft%20sind%3F.png)
Ich verwende einen Debian-Spin (Kwheezy, basierend auf Wheezy + KDE), der mit allen möglichen zusätzlichen Paketen gebündelt war. Die Liste der Apper-Quellen enthält eine Reihe von Fremdpaketen. Die Distribution ist in die Jahre gekommen und der Betreuer ist weitergezogen; einige der Apper-Quellen existieren nicht mehr. Eines Tages werde ich in den sauren Apfel beißen und ein Upgrade versuchen, aber ich möchte so lange wie möglich weitermachen, da alles absolut zuverlässig ist.
In letzter Zeit habe ich gelegentlich Nachrichten von apper erhalten, dass eine seiner Quellen nicht verfügbar war. Ich habe diese Quellen deaktiviert, um die Warnmeldungen zu stoppen. Das bedeutet jedoch, dass alle Pakete, die von dieser Quelle gepflegt wurden, nicht mehr gepflegt werden. Ich möchte zumindest die Sicherheitsprobleme im Auge behalten oder möglicherweise eine andere Quelle finden (oder diese Pakete bei Bedarf deinstallieren).
Wie erkenne ich, welche Pakete auf meinem System mit einer bestimmten Quelle verknüpft sind (die nicht mehr existiert, sodass ich nicht zur Quelle gehen kann, um zu sehen, welche Pakete sie früher enthielt)?
Antwort1
Alternative Vorgehensweisen mit dem Paketmanager
1) Mit dem grafischen Paketmanager Synaptic finden Sie die Liste der veralteten Pakete, indem Sie auf das"Status"und Auswählen„Installiert (lokal oder veraltet)“
2)Von der Befehlszeile:
mit
aptitude
:apt-get install aptitude
aptitude search '~o'
Verwendung von
apt-show-version
:apt-get install apt-show-version
apt-show-versions | grep 'No available version'
Erläuterung
Der Paketmanager bestimmt den „Status“ eines Pakets anhand der in seiner Liste aufgeführten Repositorys (und dessen, für deren Installation er verantwortlich war; wenn ein Paket also in einem aufgeführten Repository verfügbar ist, Sie es aber manuell von woanders installiert haben, verwaltet der Paketmanager es nicht als „sein eigenes“).
Pakete können aus mehreren Gründen nicht in einem der angegebenen Repositories enthalten sein:
Das Paket kann nicht mehr in das Repository aufgenommen werden, oder das Repository existiert nicht mehr, was als „veraltet“ bezeichnet wird.
Wenn Sie das Paket manuell installiert haben (z. B. von einem heruntergeladenen Tarball), wurden die Paketmanager-Hooks nicht erstellt und die Quelle wurde nicht zur Repository-Liste hinzugefügt. Das Paket wird als „lokal installiert“ bezeichnet.
Der Paketmanager konzentriert sich nur auf die Aufgabe, die er zu erledigen hat, er unterscheidet nicht zwischen den Gründen, warum ein Paket nicht in einem der angegebenen Repositories vorhanden ist. Er kann Ihnen eine Liste der installierten Pakete geben, die er nicht verwalten kann,Installiert (lokal oder veraltet), dies ist in den obigen Anweisungen vorgesehen.
Es ist nicht auf die veralteten Pakete beschränkt, bietet aber eine relativ kurze Liste. Die enthaltenen Pakete sind in alphabetischer Reihenfolge gruppiert, sodass Sie leicht erkennen und unterscheiden können, was Sie manuell installiert haben.