我正在使用 Debian spin(Kwheezy,基於 Wheezy + KDE),它與各種附加軟體包捆綁在一起。應用程式來源清單包含一堆無關的來源。該發行版已經很老舊了,維護者已經離開了;一些應用程式來源已不復存在。總有一天,我會硬著頭皮嘗試升級,但我想盡可能地一瘸一拐地走下去,因為一切都堅如磐石。
最近,我偶爾收到來自 apper 的消息,稱其來源之一不可用。我禁用了這些來源以停止警告訊息。但是,這意味著從該來源維護的任何軟體包都將不再維護。我想至少專注於安全問題或可能找到另一個來源(或在必要時卸載這些軟體包)。
如何識別系統上的哪些套件與特定來源關聯(該來源不再存在,因此我無法轉到來源來查看它曾經包含哪些套件)?
答案1
使用套件管理器的替代流程
1) 使用 Synaptic 圖形套件管理器,您可以透過點擊“地位”按鈕並選擇“已安裝(本地或過時)”
2)從命令列:
使用
aptitude
:apt-get install aptitude
aptitude search '~o'
使用
apt-show-version
:apt-get install apt-show-version
apt-show-versions | grep 'No available version'
解釋
套件管理器將套件「狀態」基於其清單中的儲存庫(以及它負責安裝的內容);即,如果一個套件可從列出的儲存庫中獲得,但您從其他地方手動安裝它,則套件管理器將不會維護它作為“它自己的一個”)。
由於多種原因,軟體包無法包含在指定儲存庫之一中:
該套件可以不再包含在儲存庫中,或者儲存庫不再存在,這稱為「過時」。
如果您手動安裝該軟體包(例如,從下載的 tarball),則不會建立軟體包管理器掛鉤,且來源不會新增至儲存庫清單;該軟體包被稱為「本地安裝」。
套件管理器只專注於它應該做的工作,它不區分套件不在其指定儲存庫之一的原因。它可以為您提供無法維護的已安裝內容的列表,已安裝(本地或過時),這就是上面的說明所提供的內容。
它不限於過時的軟體包,但它提供了一個相對較短的清單。包含的軟體包按字母順序分組,因此很容易識別和區分您手動安裝的內容。