CENTOS手动安装修复python ,YUMCENTOS手动安装修复YUM
CENTOS手動(dòng)安裝修復(fù)YUM
?2019年3月8日??Comments?0 Comment
目錄?[hide]
- 一、問(wèn)題場(chǎng)景
- 二、手動(dòng)修復(fù)
- 2.1 下載 rpm 包
- 2.2 安裝 rpm 包
- 2.3 可以使用了
- 三、python 升級(jí)小建議
一、問(wèn)題場(chǎng)景
centos 上的 python 版本默認(rèn)比較低,很多同學(xué)都會(huì)手動(dòng)升級(jí) python 的版本到 3.x。
因?yàn)?yum 的代碼是依賴(lài) python2.x 的,如果直接刪除老版本 python ,會(huì)導(dǎo)致 yum 不可用。
# 報(bào)錯(cuò)核心語(yǔ)句 No module named yum這個(gè)情況必須手動(dòng)修復(fù),很多同學(xué)因?yàn)樾迯?fù)失敗而重裝了系統(tǒng),這樣成本會(huì)很高。
這里以 centos7.5 x64 為例子,進(jìn)行修復(fù)演示。
?
二、手動(dòng)修復(fù)
2.1 下載 rpm 包
centos 官方下載網(wǎng)站是?http://mirror.centos.org/centos/。選擇國(guó)內(nèi)鏡像網(wǎng)站會(huì)快一些。這里使用的是 mirrors.ustc.edu.cn。
首頁(yè)就有各個(gè)方向的目錄鏈接。
進(jìn)到 7.5 對(duì)應(yīng)的目錄?http://mirrors.ustc.edu.cn/centos/7.5.1804/, 發(fā)現(xiàn)這里是空的。不過(guò)這沒(méi)有關(guān)系,同一個(gè)大版本號(hào)下, rpm 包是兼容的。所以可以使用 7.6 目錄下的包。
http://mirrors.ustc.edu.cn/centos/7.6.1810/os/x86_64/Packages/?,這里就是我們所需的 python 和 yum 包 所在地。
下載如下包
# python 部分 python-backports-1.0-8.el7.x86_64.rpm python-pycurl-7.19.0-19.el7.x86_64.rpm python-backports-ssl_match_hostname-3.5.0.1-1.el7.noarch.rpm python-ipaddress-1.0.16-2.el7.noarch.rpm python-setuptools-0.9.8-7.el7.noarch.rpm python-urlgrabber-3.10-9.el7.noarch.rpm python-2.7.5-76.el7.x86_64.rpm python-iniparse-0.4-9.el7.noarch.rpm python-libs-2.7.5-76.el7.x86_64.rpm python-devel-2.7.5-76.el7.x86_64.rpm rpm-4.11.3-35.el7.x86_64.rpm rpm-python-4.11.3-35.el7.x86_64.rpm # yum 部分 yum-3.4.3-161.el7.centos.noarch.rpm yum-metadata-parser-1.1.4-10.el7.x86_64.rpm yum-plugin-fastestmirror-1.1.31-50.el7.noarch.rpm?
2.2 安裝 rpm 包
先安裝 python。
運(yùn)行 rpm 命令。這里一定要加?--replacefiles --replacepkgs?參數(shù), 因?yàn)樾枰采w一些老文件老包,不加的話(huà)會(huì)提示文件沖突或者包已經(jīng)安裝過(guò)了。
sudo rpm --replacefiles --replacepkgs -ivh python-backports-1.0-8.el7.x86_64.rpm python-pycurl-7.19.0-19.el7.x86_64.rpm python-backports-ssl_match_hostname-3.5.0.1-1.el7.noarch.rpm python-ipaddress-1.0.16-2.el7.noarch.rpm python-setuptools-0.9.8-7.el7.noarch.rpm python-urlgrabber-3.10-9.el7.noarch.rpm python-2.7.5-76.el7.x86_64.rpm python-iniparse-0.4-9.el7.noarch.rpm python-libs-2.7.5-76.el7.x86_64.rpm python-devel-2.7.5-76.el7.x86_64.rpm rpm-4.11.3-35.el7.x86_64.rpm python-2.7.5-76.el7.x86_64.rpm rpm-4.11.3-35.el7.x86_64.rpm rpm-python-4.11.3-35.el7.x86_64.rpm輸出為
warning: package python-2.7.5-76.el7.x86_64 was already added, skipping python-2.7.5-76.el7.x86_64 warning: package rpm-4.11.3-35.el7.x86_64 was already added, skipping rpm-4.11.3-35.el7.x86_64 Preparing... ################################# [100%] Updating / installing... 1:python-libs-2.7.5-76.el7 ################################# [ 8%] 2:python-2.7.5-76.el7 ################################# [ 17%] 3:python-backports-1.0-8.el7 ################################# [ 25%] 4:python-pycurl-7.19.0-19.el7 ################################# [ 33%] 5:python-ipaddress-1.0.16-2.el7 ################################# [ 42%] 6:python-backports-ssl_match_hostna################################# [ 50%] 7:rpm-4.11.3-35.el7 ################################# [ 58%] 8:rpm-python-4.11.3-35.el7 ################################# [ 67%] 9:python-setuptools-0.9.8-7.el7 ################################# [ 75%] 10:python-urlgrabber-3.10-9.el7 ################################# [ 83%] 11:python-iniparse-0.4-9.el7 ################################# [ 92%] 12:python-devel-2.7.5-76.el7 ################################# [100%]
再安裝 yum,同樣也要加?--replacefiles --replacepkgs。
輸出為
這里一定要注意,必須出現(xiàn)進(jìn)度條 100% 的 輸出,才是安裝成功了。
不同版本的系統(tǒng),需要的包可能不太一樣,當(dāng)運(yùn)行安裝命令時(shí),可能會(huì)提示有一些依賴(lài)包缺失。
這種情況下,可以根據(jù)提示下載響應(yīng)的依賴(lài)包,添加到?rpm -ivh?的列表中。
2.3 可以使用了
嘗試運(yùn)行下 yum。
yum --version
輸出為
?
三、python 升級(jí)小建議
-
最好編譯安裝 python 包到一個(gè)獨(dú)立的目錄,需要使用高版本 python 時(shí),直接指定此版本的可執(zhí)行文件路徑即可。
-
千萬(wàn)不要?jiǎng)h除老版本 python, yum 本身自己升級(jí)兼容可能還需要很久,當(dāng)前還是會(huì)依賴(lài)系統(tǒng)默認(rèn)的 python。
轉(zhuǎn)載于:https://www.cnblogs.com/fengwenit/p/10555784.html
總結(jié)
以上是生活随笔為你收集整理的CENTOS手动安装修复python ,YUMCENTOS手动安装修复YUM的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Vue入门手册整理
- 下一篇: Logstash Introductio