使用 CentOS7 yum 命令在 root 下不起作用

使用 CentOS7 yum 命令在 root 下不起作用

当我使用 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/控制台会话注销,然后重新登录。

相关内容