Yum

如何優雅地 yum 刪除 Python?

  • January 27, 2021

我只是嘗試在我的 CentOS 機器上升級 Python 安裝。幾次失敗後,我做到了yum remove python

然後問題開始發生。yum在機器上發現了大約 300 個依賴項,在我確認操作後,幾乎每個命令和實用程序都變得不可用,包括ls, wgetyum本身……我別無選擇,只能重新啟動實例(我很感激它只是一個開發機器。)

我想知道刪除python是否如此有害,有什麼辦法可以優雅地刪除python?

許多 Linux 發行版都需要 Python。發行版提供商組合的許多系統實用程序(基於 GUI 和非基於 GUI)都是用 Python 程式的。

系統實用程序程式的python版本我將稱為“主”python。python例如,對於 Ubuntu 12.04,這是 2.7.3,這是您在新安裝的系統上呼叫時獲得的版本。

由於用 python 編寫的系統實用程序,不可能在不破壞系統的情況下刪除主 python。使用同一major.minor 系列中的更高版本更新主python甚至需要非常小心,因為您需要注意使用與主python 相同的配置規範來編譯它。.configure這是獲取主要 python 使用的庫的正確搜尋路徑所必需的,當您下載 python 以從原始碼進行 python 編譯時,這通常不是沒有選項會得到的。

安裝與系統使用的major.minor 版本(即主python)不同的版本通常不是問題。即,您可以編譯 2.6 或 3.4 python 並毫無問題地安裝它,因為它安裝在主 (2.7.X) python**旁邊。**有時發行版會提供這些不同的 major.minor 包,但它們可能不是該系列中最新的錯誤發布版本。

當您想使用主要python 系列中的最新版本時,問題就開始了(例如,主要python 版本為2.7.3 的系統上的2.7.8)。我建議不要嘗試替換主 python,而是在單獨的位置編譯和安裝 2.7.8(我的在 /opt/python/2.7.8 中)。這將使您保持在您的發行版的安全修復計劃中,並保證其他人測試 python 庫和該版本的兼容性(如係統實用程序所使用的那樣!)。

對於使用該版本 python 的任何開發,請使用virtualenv(或virtualenvwrapper)並使用以下方法設置 2.7.8 環境:

virtualenv -p /opt/python/2.7.8/bin/python /tmp/test
source /tmp/test/bin/activate

(第二行假設您正在使用bash

引用自:https://unix.stackexchange.com/questions/158567