【问题标题】:How to update python on Azure Redhat Linux VM?如何在 Azure Redhat Linux VM 上更新 python?
【发布时间】:2019-02-12 16:37:52
【问题描述】:

我创建了一个预装了 python 2.7.5 的 Azure Redhat Linux VM。我需要将它更新到最新版本,以便我可以在其上安装 databricks CLI 以访问 DBFS。需要有关如何执行此操作的帮助,请。

试过了:

$ sudo yum update python

结果:

Loaded plugins: langpacks, product-id, search-disabled-repos
No packages marked for update

我需要至少 2.7.9 版本的 python 才能安装 databricks CLI。 我没有本地 Linux 服务器。只有 Windows 并且没有在 PowerShell 上安装 python 的管理员权限。

【问题讨论】:

  • 你必须非常小心地在 Linux 上更新安装 python 的系统。有许多使用 python 的系统实用程序,如果您更改安装的版本,您可能会破坏它们。最好在本地安装您的版本。
  • 详细阐述@cdarke 的精彩评论;考虑使用 conda conda.io/en/latest/miniconda.html 之类的东西或其他方法为您的项目创建不干扰系统 python 的虚拟环境。否则你可能会发现自己陷入了痛苦的世界,很多包管理工具都是用 python 编写的,所以篡改它不是一个好主意。

标签: python linux azure virtual-machine


【解决方案1】:

通常,Linux 发行版的默认 Python 版本取决于 Linux 发行版版本。因此,如果您在 Azure VM 上创建了最新版本的 RedHat Linux,则可以通过以下步骤升级默认的 Python 2 版本。

  1. 通过yum info pythonyum list python检查是否存在你想要的Python升级版本。
  2. 如果有升级版本,可以通过yum -y upgrade pythonyum -y update python进行升级。

对于较旧的 Linux 发行版,我猜在您当前的 RedHat Linux VM 上,Python 有一个上限版本,例如 Python 2 的 2.7.5。因此,您不能简单地通过系统包管理器yum 升级它以从默认包存储库安装更高版本。然后,我们需要下载指定版本Python的源码,在当前环境下编译安装。

有博客How to Install or Upgrade Python in Linux Systems介绍怎么做。

这是我安装 Python 2.7.9 的步骤。

  1. 确保在当前环境中安装了编译器工具包gccg++。通过gcc -vg++ -v 进行检查。通过yum -y install gcc gcc-c++ 和其他依赖项安装,例如zlibzlib-devopensslopenssl-devncurses-libsreadline-develsqlite-develbzip2-develgdbm-devel、3等等。
  2. 通过$ wget https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz从官方 Python FTP 下载源代码包。
  3. 通过tar -zxvf Python-2.7.9.tgz解压。
  4. cd Python-2.7.9.

如果你只是想暂时使用 Python 2.7.9,接下来的步骤如下。

  1. ./configure && make
  2. 通过export PATH=$HOME/<the parent path>/Python-2.7.9/:$PATH配置PATH环境变量
  3. 然后,您可以在当前的 Shell 会话中使用 Python 2.7.9。

如果你想将 Python 2.7.9 安装到 /usr/local 并且不破坏当前默认 Python 版本以避免可能的系统崩溃问题,接下来的步骤如下。

  1. ./configure --prefix=/usr/local
  2. make && sudo make altinstall
  3. 然后,您可以通过python2.7 使用Python 2.7.9。您可以通过python -Vpython2 -Vpython2.7 -V查看所有Python版本。

希望对你有帮助。

【讨论】:

    猜你喜欢
    • 2023-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-08
    • 1970-01-01
    • 2022-09-29
    • 2017-02-10
    • 2017-07-11
    相关资源
    最近更新 更多