RHEL 7.9 VMでYUMが破損している:/usr/bin/python:無効なインタプリタ:そのファイルまたはディレクトリがありません

RHEL 7.9 VMでYUMが破損している:/usr/bin/python:無効なインタプリタ:そのファイルまたはディレクトリがありません

私はホームラップで無料バージョンのRHELを使用しているので、Red Hatのサポートはありません。 CentOSに対する同じ修正をここに適用する必要があります...

Python3のアップグレードを試してはいけませんでしたが、振り返ってみると(いつものように)20/20です。 YUMを使用しようとすると、次の結果が表示されます。

[root@RHEL7 ~]# yum update
-bash: /usr/bin/yum: /usr/bin/python: bad interpreter: No such file or directory
[root@RHEL7 ~]# yum
-bash: /usr/bin/yum: /usr/bin/python: bad interpreter: No such file or directory

このエラーについて読んでみると、Python2および/または3を完全に再インストールする必要があるようですが、他の修正があるかどうか疑問に思います。 Python2とPython3は実際にはまだ機能しています(少なくともREPLでは)。

[root@RHEL7 ~]# python3
Python 3.6.8 (default, Aug 13 2020, 07:46:32)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
[root@RHEL7 ~]# python2
Python 2.7.5 (default, Aug 13 2020, 02:51:10)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>

Python2をデフォルト値に設定しようとすると、次の結果が表示されます(何も返されず、問題が解決しません)。

[root@RHEL7 bin]# update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
[root@RHEL7 bin]#
[root@RHEL7 bin]# yum
-bash: /usr/bin/yum: /usr/bin/python: bad interpreter: No such file or directory

奇妙にPython2はエイリアシングになっているようですが、python実行してみるとpython何も起こりませんね…?シンボリックリンクはすでに存在している必要があります。

[root@RHEL7 bin]# pwd
/usr/bin
[root@RHEL7 bin]# python
-bash: python: command not found
[root@RHEL7 bin]# ln -s python2 python
ln: failed to create symbolic link ‘python’: File exists
[root@RHEL7 bin]# ls -l python
lrwxrwxrwx 1 root root 24 Jul  9 11:30 python -> /etc/alternatives/python

ベストアンサー1

まあ、見つかりません/usr/bin/python。次のようにする必要があります。

[root@centos7 ~]# ls -l /usr/bin/python
lrwxrwxrwx. 1 root root 7 Jul  9 11:08 /usr/bin/python -> python2
[root@centos7 ~]#

python2自体がまだ存在しているがシンボリックリンク自体が見つからない場合は、次のコマンドを使用して復元してください。

[root@centos7 ~]# cd /usr/bin
[root@centos7 bin]# ln -s python2 python
[root@centos7 bin]# ls -l python
lrwxrwxrwx. 1 root root 7 Jul  9 11:10 python -> python2
[root@centos7 bin]#

Romeoのソリューションは問題を解決するかもしれませんが、もともとシンボリックリンクとは少し異なって見えます。あなたの家の研究室では、これは重要ではないかもしれません。

[root@centos7 ~]# update-alternatives --install /usr/bin/python python /usr/bin/                                                                                                                        python2.7 1
[root@centos7 ~]# ls -l /usr/bin/python
lrwxrwxrwx. 1 root root 24 Jul  9 11:11 /usr/bin/python -> /etc/alternatives/python
[root@centos7 ~]# ls -l /etc/alternatives/python
lrwxrwxrwx. 1 root root 18 Jul  9 11:11 /etc/alternatives/python -> /usr/bin/python2.7
[root@centos7 ~]#

おすすめ記事