首页 > 解决方案 > 在 CENTOS 上安装 Google Cloud SDK:找不到正确的 Python 版本

问题描述

当我输入:

yum install google-cloud-sdk

我收到一条错误消息,说它需要大于或等于 2.7 的 python 版本。

我确实安装了 2.7,但是当我输入python -V它时显示 2.6.6。

我正在使用 CENTOS 6.10

如何修复此错误并安装 Google Cloud SDK?

标签: pythonlinuxservergoogle-cloud-platformcentos

解决方案


一种可能的方法是不依赖特定于操作系统的预打包 SDK,它附带的依赖项可能会损害您随意安装/升级 SDK 本身或其组件的能力(如果使用不是由 Google 构建的软件包,因为您会需要等待这些包可用)。

为此,您可以从从版本化存档安装(或者如果需要,从存档 GCS 存储桶中下载旧版本)下载最新的通用 linux SDK(google-cloud-sdk-<version>-linux-x86_64.tar.gz文件) - 您可以在方便的位置解压缩(我个人选择)。它非常独立,甚至允许并排拥有多个 SDK 版本 - 我这样做了,我可以使用符号链接随意在版本之间切换。这是它的样子:/usr/local

my_laptop:/usr/local> ls -la | grep google-cloud-sdk
lrwxrwxrwx  1 root    root        20 Feb 26 22:30 google-cloud-sdk -> google-cloud-sdk-236
drwxr-xr-x  1 root    root       342 Jun 14  2018 google-cloud-sdk-204
drwxr-xr-x  1 root    root       342 Dec 17  2018 google-cloud-sdk-228
drwxr-xr-x  1 root    root       342 Feb 26 22:33 google-cloud-sdk-236

为了不必弄乱路径,我只是将所需的 SDK 可执行文件从current版本符号链接到/usr/local/bin(我的路径中已经有):

my_laptop:/usr/local/bin> ls -la | grep google-cloud-sdk
lrwxrwxrwx  1 root root   38 Aug  9  2016 gcloud -> /usr/local/google-cloud-sdk/bin/gcloud
lrwxrwxrwx  1 root root   38 Aug  9  2016 gsutil -> /usr/local/google-cloud-sdk/bin/gsutil

一般来说,这应该适用于各种 Linux 变体(我安装的版本在我相当古老的 OpenSuSE 13.3 上工作得很好,并且在完整的操作系统重新安装到 OpenSuSE Leap 15.0 后幸存下来)。

这种方法对您的包管理器应该是完全不透明的(所以不要尝试使用它进行升级),甚至可以作为普通用户完成,不一定是 root(如果需要)。

为了使用 SDK,您可能仍然需要弄清楚您的 python 版本问题。如果python -V它显示 2.6.6,那么您也安装了该版本,它是 2.7 的首选版本。您的选择:

  • 卸载python 2.6
  • python2.7使用而不是仅调用python python

    my_laptop:/usr/bin> python2.7  -V
    Python 2.7.14
    
  • 更新您的/usr/bin/python符号链接以指向您想要的版本:

    my_laptop:/usr/bin> ls -la | grep python
    lrwxrwxrwx 1 root root           9 Feb  6 13:04 python -> python2.7
    lrwxrwxrwx 1 root root           9 Feb  6 13:04 python2 -> python2.7
    -rwxr-xr-x 1 root root        6304 Feb  6 13:05 python2.7
    lrwxrwxrwx 1 root root           9 Jan 31 11:36 python3 -> python3.6
    -rwxr-xr-x 2 root root       10456 Jan 31 11:36 python3.6
    

推荐阅读