次のコマンドを使用してOpenSSHを削除しました。
for i in $(rpm -qa | grep openssh);do sudo rpm -e $i --nodeps;done
それでは、なぜこれが良い考えだと思ったのかわかりません。 Pythonを削除するために、次のコマンドを実行しました。
for i in $(rpm -qa | grep python);do sudo rpm -e $i --nodeps;done
ここで sudo yum update を実行すると、次のような結果が表示されます。
bash: /bin/yum: /usr/bin/python: 無効なインタプリタ: そのファイルやディレクトリがありません。
/bin/yum の最初の行は次のようになります。
#!/usr/bin/python
その後、Pythonの/ usr / binディレクトリを確認しました。
ls -lha /usr/bin | grep python
しかし、何も戻ってこなかった。
答え1
Webから適切なPython RPMを検索し、手動でダウンロードしてください。wget
またはおよびを使用してcurl
手動でインストールしますrpm -i
。
あなたの意見を見ると、CentOSのバージョンが同じである別のコンピュータがあることがわかりますので、幸運です:).インストールするパッケージに関する正確な情報を入手できます。他のコンピュータでは、次のように入力してください。
rpm -q -R yum
これにより、すべてのyum
依存関係が一覧表示されます。たとえば、私がアクセスできる以前のバージョンのCentOSには、次のものがリストされています。
/usr/bin/python
config(yum) = 3.2.29-40.el6.centos
pygpgme
python >= 2.4
python(abi) = 2.6
python-iniparse
python-sqlite
python-urlgrabber >= 3.9.0-8
rpm >= 0:4.4.2
rpm-python
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PartialHardlinkSets) <= 4.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(VersionedDependencies) <= 3.0.3-1
yum-metadata-parser >= 1.1.0
yum-plugin-fastestmirror
rpmlib(PayloadIsXz) <= 5.2-1
名前に項目が含まれていない項目は削除しなかったpython
ため、無視できます。このpython(abi)
アイテムはただ1つのアイテムなので、無視することもできます。特徴パッケージで提供されますpython
。だから、残っているのは次のとおりです。
python >= 2.4
python-iniparse
python-sqlite
python-urlgrabber >= 3.9.0-8
rpm-python
その後、各パッケージの実行について
rpm -q <packagename>
インストールされたパッケージの正確なファイル名/バージョンを提供します。たとえば、コンピュータにはrpm -q python
出力python-2.6.6-36.el6.x86_64
とrpm -q python-iniparse
出力がありますpython-iniparse-0.3.1-2.1.el6.noarch
。したがって、CentOSリポジトリでこれらのファイル名を正確に見つける必要があります。ディレクトリ内のファイルにリポジトリアドレスを見つけることができます/etc/yum.repos.d
。
RPMファイルをダウンロードしてインストールしてください。
それでもyum
機能しない場合は、Pythonパッケージが互いに依存していて、まだ何かが欠けている可能性があります。他のコンピュータで以下を確認してください。
rpm -qa | grep python
破損したシステムで指定されたすべてのパッケージをインストールします。