在 RHEL7 中将 Python3 设置为默认值而不破坏 yum

在 RHEL7 中将 Python3 设置为默认值而不破坏 yum

为了python使用 Python3 解释在 RHEL7 VM 中调用的命令而不破坏yum需要 Python2 的程序,需要更改或添加哪些特定语法?

第一次尝试:


cloud-init我们的第一次尝试是将以下两行添加到实例化虚拟机的启动脚本的最后:

rm /usr/bin/python
ln -s /usr/bin/python3 /usr/bin/python

导致的错误:


cloud-init问题在于,将上述两行添加到启动脚本的末尾会导致命令在随后调用yum时中断,如下所示:yum

$ sudo yum update -y
  File "/bin/yum", line 30
    except KeyboardInterrupt, e:
                            ^
SyntaxError: invalid syntax
$

切换错误:


cloud-init我们可以通过从启动脚本中删除上述两行并重新实例化新的替换虚拟机来关闭该错误。这隔离了问题的根源,但我们仍然面临如何默认python使用 Python3 而不破坏yum.

答案1

以下是您可以在紧急情况下使用的快速技巧:

sed -i 1s/python/python2/ /bin/yum

我不会使用它作为解决方案 - 它会造成不一致,而且只能修复yum。很可能还有其他系统或其他工具依赖于 pythin2。只是我的0.02。

相关内容