誤って削除されたPythonとyumはcentos7で動作していません[終了]


12

私はLinuxが初めてで、Pythonを最初からインストールできるように削除しようとしていました。/ usr / local / bin /のpythonファイルのみを削除する代わりに、これらも削除しました。

/usr/bin/python
/usr/bin/python2.7
/usr/lib/python2.7
/usr/lib64/python2.7
/etc/python
/usr/include/python2.7
/usr/share/man/man1/python.1.gz
/usr/src/Python-3.7.3/python

今、私はyumを使用しようとするたびに私は得る:

-bash:/ usr / bin / yum:/ usr / bin / python:不正なインタープリター:そのようなファイルまたはディレクトリはありません

これを修正する方法はありますか、それともcentos7を再インストールすることが私の唯一の希望ですか?

後者の場合、物理的にアクセスできないリモートサーバーでどのように行うことができますか?


12
「私はLinuxが初めてで、Pythonを削除してゼロからインストールしようとしていました」 -Pythonをゼロからインストールするのはおそらくとにかく間違った方法です。ディストリビューションで提供されている2.7を削除するのは間違いなく間違った方法です。パッケージマネージャーではなく、パッケージマネージャーを使用することを検討しください。
marcelm

4
これはCentOSではなくDebian向けですが、アドバイスは他のディストリビューションにも当てはまります:Debianを壊さないでください
ジョナサンラインハート

3
削除する任意の(あなたは最小限のインストールなかった場合は特に)新規インストールから来ているパッケージは、ディストリビューションを壊す危険性をもたらします。ほとんどのLinuxディストリビューションにはそれほど大きなものはありません...キャンディークラッシュがプリインストールされているWindows10やそのようなものとは異なります。
ジャコモアルゼッタ

4
Python 2は、ほとんどのバージョンのLinuxのシステムで、あらゆる種類のことを自動化するスクリプト言語として使用されています。pythonを削除することで、あなたが座っていたブランチを切断しました。Linuxを完全に再インストールするのがおそらく最も安全です。LinuxでのPythonのユーザーインストールでは、Linuxでpython仮想環境を使用することをお勧めします。これにより、ユーザーpythonはシステムpythonから完全に分離されます。複数の個別のpythonバージョンをインストールでき、sudoではなくユーザーレベルのみを維持/拡張できるという利点があります。
Neil_UK

回答:


21

あなたのパッケージを単にダウンロードして再度インストールすることができrpmますyum

インストールしたバージョンを見つける

rpm -qf /usr/bin/python

次に、ダウンロードURLを見つけて、一度にまたは個別のステップでダウンロードしてインストールします。

rpm --reinstall -v http://mirror.centos.org/centos-7/7/updates/x86_64/Packages/python-2.7.5-80.el7_6.x86_64.rpm

ご回答有難うございます。最終的に、同じバージョンのVMにCentosをインストールしました。そして、削除されたすべてのファイルをサーバーにコピーしました。Yumはこれまでのところ機能しているようですが、損傷が完全に修正されたかどうかはわかりません。
jdhash

@jdhash Yumはこれまでのところ機能しているようですが、損傷が完全に修正されたかどうかはわかりません。 それが、OS /ディストリビューションの一部としてインストールされたソフトウェアをいじらないことの理由の1つにすぎませ
アンドリューヘンレ

1
元のシステムを再インストールすることが、これを完全にクリーンアップしたことを確認する唯一の方法だと思います。他のシステムからファイルをコピーするようなバンドエイドは、パッケージングシステムが物事が欠けていると考えるので、落ち続けますが、そうではありません。メタデータはまだインストールされているものと一致していません。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.