当我使用 yum 时,我得到这个:
$ yum -y update
-bash: /usr/bin/yum: /usr/bin/python: bad interpreter: No such file or directory
所以我从这里遵循了在线答案:
$ sudo rm -rf /usr/bin/python
$ sudo ln -s /usr/bin/python2.7 /usr/bin/python
ln: failed to create symbolic link ‘/usr/bin/python’: File exists
另外检查了 yum:
$ type -a yum
yum is /usr/bin/yum
并检查了Python:
$ which python
/usr/bin/which: no python in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)
所以我对这里发生的事情完全感到困惑。这似乎可能是在我安装 python3 或创建新用户之后开始的。
附言。我对 Centos7 还很陌生。
更新:
$ file /usr/bin/python
/usr/bin/python: symbolic link to `python2'
$ ls -l /usr/bin/python
lrwxrwxrwx. 1 root root 7 Dec 1 11:01 /usr/bin/python -> python2
答案1
所以我从这里遵循了在线答案:
从哪里?没有实际的链接。确保它被发布,以便我们知道是谁发布了这样的破坏性建议:
sudo rm -rf /usr/bin/python
无论是在 CentOS 还是任何其他使用任何类型的软件包的系统(Debian、Ubuntu 等)中,你都不应该做这样的事情。
/usr/bin
您可以对下面的文件(由 管理)做的唯一安全的事情yum
就是启动它们。您永远不应该手动删除这些文件。如果您想删除某些内容,您应该运行类似的命令yum remove <package-name>
,这将删除二进制文件(如果有)和属于包程序的任何其他补充文件。
虽然您还没有完全搞砸系统,但您可以重新创建正确的符号链接:
ln -fs /usr/bin/python2 /usr/bin/python
之后,从 SSH/控制台会话注销,然后重新登录。