CentOS 7系統中執行yum命令失敗問題的排查方法

安全劍客發表於2020-08-25
本文主要講述  7系統中執行yum 失敗問題的排查方法。

CentOS 7系統中執行yum命令失敗問題的排查方法CentOS 7系統中執行yum命令失敗問題的排查方法

執行yum 報404錯誤

檢查yum倉庫是否配置正確,可以到CentOS 映象下載阿里雲repo配置檔案。
如果報錯中包含$releasever變數, 則執行rpm -qa | grep centos-release確認centos-release是否安裝。未安裝可以執行以下命令下載安裝包進行安裝。

wget 
rpm -ivh centos-release-7-7.1908.0.el7.centos.x86_64.rpm
執行yum install命令提示failed錯誤

從報錯可以看到提示以下資訊,此處以安裝Telnet為例。

ERROR UNpacking rpm package 1:telnet-0.17-64.e17.x86_64
error:unpacking of archive failed on file /usr/bin/telnet;5e785bc7:cpio:open

請您執行lsattr命令檢查/usr/bin目錄許可權,發現該目錄有i屬性,導致無法寫入檔案。執行以下命令解除目錄的i屬性即可。

chattr -i /usr/bin
執行yum命令提示Python直譯器不存在

在執行yum命令時提示以下報錯資訊。

-bash: /usr/bin/yum: /usr/bin/python: bad interpreter: No such file or directory

說明:yum是一個python 。

執行以下命令檢視yum路徑。

cat /usr/bin/yum

系統會返回以下路徑。

#!/usr/bin/python

執行以下命令檢查上述檢視的路徑。

ls -al /usr/bin/python

如果系統返回以下資訊,Python可能被解除安裝、被改名或移動路徑。

ls: cannot access /usr/bin/python: No such file or directory

請您參考以下步驟進行排查。
執行以下命令檢視安裝包是否存在。

rpm -qa | grep python

系統返回以下資訊。

python-decorator-3.4.0-3.el7.noarch
libselinux-python-2.5-14.1.el7.x86_64
python-backports-1.0-8.el7.x86_64
python-pyudev-0.15-9.el7.noarch
rpm-python-4.11.3-35.el7.x86_64
python-2.7.5-76.el7.x86_64
.....

執行以下命令檢視Python相關檔案。

ls -al /usr/bin/python*

系統返回以下資訊。

lrwxrwxrwx  1 root root   14 Feb 15  2019 /usr/bin/python-config -> python2-config
lrwxrwxrwx. 1 root root    7 Feb 15  2019 /usr/bin/python.bak -> python2
lrwxrwxrwx. 1 root root    9 Feb 15  2019 /usr/bin/python2 -> python2.7
lrwxrwxrwx  1 root root   16 Feb 15  2019 /usr/bin/python2-config -> python2.7-config
-rwxr-xr-x. 1 root root 7216 Oct 31  2018 /usr/bin/python2.7
-rwxr-xr-x  1 root root 1835 Oct 31  2018 /usr/bin/python2.7-config

請您根據返回的資訊參考以下場景進行操作。
檢查/usr/bin/python.bak是否被改名,若發現被改名後手動改回即可恢復正常。
如果未發現Python相關檔案,即判定Python被解除安裝。
請您找個同系統的正常例項,執行如下命令。

mkdir /python/
yum install python --downloadonly --downloaddir=/python/

執行以下命令將/python/中的rpm包傳到異常例項。

scp /python/* root@x.x.x.x:/tmp/

注意:x.x.x.x指的是需要訪問的主機地址。前提是主機還有公網訪問能力,能複製檔案到主機中。
執行以下命令在異常例項上安裝Python即可。

cd /tmp
rpm -ivh *

原文地址:

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31559985/viewspace-2714674/,如需轉載,請註明出處,否則將追究法律責任。

相關文章