首页 > 解决方案 > 更新 manjaro 后 gcloud 无法正常工作

问题描述

我为我的 manjaro 安装进行了一些系统更新,之后在尝试运行时收到以下错误消息gcloud

gcloud components update
Traceback (most recent call last):
  File "/home/mani/Downloads/google-cloud-sdk/lib/gcloud.py", line 104, in <module>
    main()
  File "/home/mani/Downloads/google-cloud-sdk/lib/gcloud.py", line 62, in main
    from googlecloudsdk.core.util import encoding
  File "/home/mani/Downloads/google-cloud-sdk/lib/googlecloudsdk/__init__.py", line 23, in <module>
    from googlecloudsdk.core.util import importing
  File "/home/mani/Downloads/google-cloud-sdk/lib/googlecloudsdk/core/util/importing.py", line 23, in <module>
    import imp
  File "/usr/lib/python3.9/imp.py", line 23, in <module>
    from importlib import util
  File "/usr/lib/python3.9/importlib/util.py", line 2, in <module>
    from . import abc
  File "/usr/lib/python3.9/importlib/abc.py", line 17, in <module>
    from typing import Protocol, runtime_checkable
  File "/usr/lib/python3.9/typing.py", line 26, in <module>
    import re as stdlib_re  # Avoid confusion with the re we export.
  File "/usr/lib/python3.9/re.py", line 124, in <module>
    import enum
  File "/home/mani/Downloads/google-cloud-sdk/lib/third_party/enum/__init__.py", line 26, in <module>
    spec = importlib.util.find_spec('enum')
AttributeError: module 'importlib' has no attribute 'util'

上网查了一下,发现问题可能是这个版本gcloud不支持python3.9,推荐的解决方案是运行gcloud components update,但是报同样的错误。有没有办法可以恢复或使命令使用较旧的 python 版本来升级自身,然后返回到新的 python 3.9?

标签: pythongoogle-cloud-platformgcloud

解决方案


根据以下GCP 官方文档,您可以通过删除主目录将 Cloud Shell 虚拟机恢复到原始状态,如下所示:

ls -a $HOME

sudo rm -rf $HOME

现在在 Cloud Shell 中单击三点菜单并重新启动 VM 将创建一个新 VM,并且主目录将恢复为默认状态。

由于您在本地计算机中遇到问题,经过研究,我注意到PIT1是 Google 问题跟踪器中的一个错误。现在在以下线程上几乎没有 WA,您可以相应地应用它。

还有另一个PIT2作为功能请求以添加对 python 3.9 的支持。如果您对此问题有任何其他意见或疑虑,请随时在此处发布。

在github中找到的另一个 WA可能对您的用例有用。


推荐阅读