在Linux上安装Anaconda Python Distribution

时间:2020-03-21 11:45:12  来源:igfitidea点击:

本分步教程介绍了如何在Linux操作系统上安装Anaconda Python发行版。
对于那些想知道的人,Anaconda Python发行版是Python和R编程语言的免费,跨平台和开源发行版。
它用于数据科学,机器学习,大规模数据处理和预测分析等。
Anaconda有两个版本,免费和付费企业版。

Anaconda发行版使数据科学家能够:

  • 下载超过1500多种Python和R数据科学软件包的集合,
  • 管理库,软件包和虚拟环境,
  • 开发和运行机器学习和深度学习模型,
  • 分析数据,
  • 并使用各种工具可视化结果。

Anaconda附带了一个命令行软件包和一个称为Conda的虚拟环境管理器,用于管理和部署应用程序,环境和软件包。
Conda是为Python软件包创建的,但是可以用于任何语言。

使用Conda实用程序,我们可以

  • 创建新的Conda环境,
  • 将软件包安装到指定的Conda环境中,
  • 列出Conda环境中的软件包,
  • 更新conda软件包,
  • 搜索软件包,
  • 清理未使用的程序包,
  • 从环境中删除软件包,
  • 和更多。

它还包括Anaconda Navigator,这是图形输入法,适用于不熟悉命令行界面的用户。

在Linux上安装Anaconda Python Distribution

出于本教程的目的,我将使用Python 3版本的Anaconda。
我们可以使用Python 2.7版本,但不再正式支持它。
许多项目已经放弃了对Python 2的支持,因此我建议我们使用Python3.x。
Python已预装在包括Ubuntu在内的许多Linux操作系统上。
我已经在Ubuntu 18.04桌面版上对其进行了测试,但是下面给出的步骤应该适用于大多数Linux发行版。

首先,请确保已安装Anaconda的所有必要准备工作。

在Arch Linux及其变体上,运行以下命令以安装所有必需的准备工作:

$sudo pacman -S libxau libxi libxss libxtst libxcursor libxcomposite libxdamage libxfixes libxrandr libxrender mesa-libgl  alsa-liblibglvnd

在Debian,Ubuntu和Linux Mint上:

$sudo apt-get install libgl1-mesa-glx libegl1-mesa libxrandr2 libxrandr2 libxss1 libxcursor1 libxcomposite1 libasound2 libxi6 libxtst6

在RHEL上,CentOS:

$sudo yum install libXcomposite libXcursor libXi libXtst libXrandr alsa-lib mesa-libEGL libXdamage mesa-libGL libXScrnSaver

在openSUSE上:

$sudo zypper install libXcomposite1 libXi6 libXext6 libXau6 libX11-6 libXrandr2 libXrender1 libXss1 libXtst6 libXdamage1 libXcursor1 libxcb1 libasound2  libX11-xcb1 Mesa-libGL1Mesa-libEGL1

安装必备软件后,请从Linux官方下载页面中下载最新的Anagonda Installer,具体取决于我们Linux发行版的体系结构。

我使用的是64位操作系统,因此我使用以下命令下载了64位安装程序:

$wget https://repo.anaconda.com/archive/Anaconda3-2019.10-Linux-x86_64.sh

检查下载文件的完整性:

$sha256sum Downloads/Anaconda3-2019.10-Linux-x86_64.sh
46d762284d252e51cd58a8ca6c8adc9da2eadc82c342927b2f66ed011d1d8b53 Downloads/Anaconda3-2019.10-Linux-x86_64.sh

将其与Anagonda的官方哈希进行比较。

如果本地下载的安装程序文件的哈希值与官方哈希值匹配,那就很好了。

现在,使用以下命令安装适用于Python 3.7的Anaconda:

$bash ~/Downloads/Anaconda3-2019.10-Linux-x86_64.sh

不管我们使用什么shell,都包括bash命令。
将~/Downloads /替换为我们下载的文件的路径。

安装程序会提示我们按ENTER继续安装。

Welcome to Anaconda3 2019.10
In order to continue the installation process, please review the license
agreement.
Please, press ENTER to continue
>>>

按ENTER键滚动到许可条款的底部,然后键入“是”,然后按同意许可协议并继续安装。

Please answer 'yes' or 'no':'
>>> yes

接下来,安装程序会询问我们要其中安装Anaconda。
我们将获得三个选择。
按ENTER接受默认的安装位置。
按CTRL + C取消安装或者提及备用安装目录。
我使用默认的安装路径,在我的情况下为/home/sk/anaconda3.

Anaconda3 will now be installed into this location:
/home/sk/anaconda3
- Press ENTER to confirm the location
- Press CTRL-C to abort the installation
- Or specify a different location below
[/home/sk/anaconda3] >>>

如果选择默认位置,安装程序将显示“ PREFIX =/home/<用户>/anaconda <2或者3>”并继续安装。
可能需要几分钟才能完成。

接下来,将提示我们初始化Anaconda。
建议对其进行初始化,因此只需键入“是”,然后按Enter键即可继续。

Preparing transaction: done
Executing transaction: done
installation finished.
Do you wish the installer to initialize Anaconda3
by running conda init? [yes|no]
[no] >>>  yes

最后,我们将看到“感谢我们安装Anaconda3!”如果安装成功,则显示此消息。

[...]
no change /home/sk/anaconda3/condabin/conda
no change /home/sk/anaconda3/bin/conda
no change /home/sk/anaconda3/bin/conda-env
no change /home/sk/anaconda3/bin/activate
no change /home/sk/anaconda3/bin/deactivate
no change /home/sk/anaconda3/etc/profile.d/conda.sh
no change /home/sk/anaconda3/etc/fish/conf.d/conda.fish
no change /home/sk/anaconda3/shell/condabin/Conda.psm1
no change /home/sk/anaconda3/shell/condabin/conda-hook.ps1
no change /home/sk/anaconda3/lib/python3.7/site-packages/xontrib/conda.xsh
no change /home/sk/anaconda3/etc/profile.d/conda.csh
modified /home/sk/.bashrc
==> For changes to take effect, close and re-open your current shell. <==
If you'd prefer that conda's base environment not be activated on startup, 
set the auto_activate_base parameter to false:
conda config --set auto_activate_base false
Thank you for installing Anaconda3!
===========================================================================
Anaconda and JetBrains are working together to bring you Anaconda-powered
environments tightly integrated in the PyCharm IDE.
PyCharm for Anaconda is available at:
https://www.anaconda.com/pycharm

为了使安装生效,请关闭并重新打开终端。
或者,运行以下命令:

$source ~/.bashrc

现在,我们将在Shell提示符前看到前缀(基本)。
这意味着conda的基本环境已激活。

如果我们不希望默认启用它,并且希望在任何地方运行conda,请运行以下命令:

$conda config --set auto_activate_base false
$source ~/.bashrc

现在,我们将在shell提示中看不到前缀(基本)。

验证Anaconda安装

从终端运行以下命令,以验证Anaconda的安装。

$conda list

如果Anaconda已正确安装并运行,我们将看到已安装软件包及其版本的列表,如以下输出所示。

输出示例:

# packages in environment at /home/sk/anaconda3:
## Name Version Build Channel
_ipyw_jlab_nb_ext_conf 0.1.0 py37_0 
_libgcc_mutex 0.1 main 
alabaster 0.7.12 py37_0 
anaconda 2019.10 py37_0 
anaconda-client 1.7.2 py37_0 
anaconda-navigator 1.9.7 py37_0 
anaconda-project 0.8.3 py_0
.
.
.
zeromq                    4.3.1                he6710b0_3  
zict                      1.0.0                      py_0  
zipp                      0.6.0                      py_0  
zlib                      1.2.11               h7b6447c_3  
zstd                      1.3.7                h0b5b093_0

我们还可以通过进入Python Shell来验证安装。
为此,只需键入:

$python

此命令运行Python Shell。
如果Anaconda已安装且正在运行,它将显示“ Anaconda,Inc.”。
消息,如以下输出所示。

Python 3.7.4 (default, Aug 13 2019, 20:35:49) 
[GCC 7.3.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>

要退出Python Shell并返回到Shell提示符,请输入以下命令:

quit()

要了解有关Conda命令和选项的更多信息,请查看手册页。

$man conda

Anaconda导航器GUI

我们可以使用Conda从命令行管理软件包和环境。
如果我们是新手,请使用Anaconda Navigator GUI。

要启动Anaconda Navigator图形界面,请从终端运行以下命令:

$anaconda-navigator

Anaconda Navigator的默认界面如下所示。

如我们所见,Anaconda导航器默认包含以下IDE。

  • JupyterLab,
  • Jupyter笔记本,
  • Spyder,
  • 格吕维兹
  • 橙子,
  • RStudio,
  • Visual Studio代码。

我们可以使用它们来编写,运行和调试代码。

Anaconda将安装最新的IDE。
但是,我们可以安装特定版本。
为此,请单击IDE旁边的齿轮按钮,然后选择“安装特定版本”。

如果我们不需要任何IDE应用程序,请单击齿轮按钮,然后选择“删除应用程序”选项。

默认情况下,只有一个名为base的环境可用。
我们还可以创建一个新环境。
为此,请单击左窗格上的“环境”选项卡,然后单击底部的“创建”按钮。
接下来,输入环境名称,选择Python版本(例如3.7),然后点击创建按钮。

左窗格上还有其他两个选项卡,分别是“学习”和“社区”,可找到学习资料(文档和视频)以学习数据科学和机器学习。

运行一个简单的Python程序

从命令行:

转到Python shell:

$python

我们将看到>>>标志。
这意味着我们正在使用Python。
输入代码。

例如,我键入以下代码:

print("Welcome to theitroad")

当我们按ENTER键时,我们将“欢迎来到公路上的消息”。

使用图形化IDE

如前所述,Anaconda默认随附7个IDE,用于编写,运行和调试程序。
我将使用Spyder,它是Scientific Python Development Environment的缩写。
从Anaconda Navigator主屏幕启动Spyder。

这就是Spyder IDE应用程序的外观。

如我们所见,有两个窗格。
左窗格是代码编辑器,我们可以其中编写代码。
右侧窗格称为iPython控制台,可让我们访问Python交互模式。

让我们编写一个简单的程序。

从菜单列中转到文件->新文件。
在代码编辑器中键入代码。
将其保存到我们选择的任何位置。
然后单击工具列中的“运行”按钮或者转到“运行”->“从菜单列中运行”或者按F5.
我们将在iPython控制台中看到结果。

有关如何使用Spyder的更多详细信息,请参阅帮助部分。
在iPython控制台上方还有一个名为help的可用帮助,或者转到在线帮助部分。

更新Anaconda

验证当前安装的Conda版本:

$conda info
active environment : base
active env location : /home/sk/anaconda3
shell level : 1
user config file : /home/sk/.condarc
populated config files : /home/sk/.condarc
conda version : 4.7.12
conda-build version : 3.18.9
python version : 3.7.4.final.0
virtual packages : 
base environment : /home/sk/anaconda3 (writable)
channel URLs : https://repo.anaconda.com/pkgs/main/linux-64
https://repo.anaconda.com/pkgs/main/noarch
https://repo.anaconda.com/pkgs/r/linux-64
https://repo.anaconda.com/pkgs/r/noarch
package cache : /home/sk/anaconda3/pkgs
/home/sk/.conda/pkgs
envs directories : /home/sk/anaconda3/envs
/home/sk/.conda/envs
platform : linux-64
user-agent : conda/4.7.12 requests/2.22.0 CPython/3.7.4 Linux/5.3.0-26-generic ubuntu/18.04.3 glibc/2.27
UID:GID : 1000:1000
netrc file : None
offline mode : False

要将Conda更新到当前版本,请运行:

$conda update -n base conda

将所有软件包更新为最新版本的Anaconda:

$conda update anaconda

卸载Anaconda

如果我们不再使用Anaconda,请如下所示将其从系统中删除。

首先,我们需要安装“ anaconda-clean”模块才能从系统中完全卸载Anaconda。

$conda install anaconda-clean

接下来,运行以下命令删除Anaconda:

$anaconda-clean --yes

这将在$HOME目录中创建一个名为.anaconda_backup的备份目录。

Backup directory: /home/sk/.anaconda_backup/2017-01-24T183205

然后,使用以下命令删除整个Anaconda目录和备份目录:

$rm -fr ~/anaconda3/
$rm -fr ~/.anaconda_backup/

最后,从~/.bashrc文件中删除所有Anaconda条目:

$nano ~/.bashrc

在我的Ubuntu框中添加了以下几行,并删除了它们。
在删除之前,请仔细检查这些行。

[..]
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/sk/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
    eval "$__conda_setup"
else
    if [ -f "/home/sk/anaconda3/etc/profile.d/conda.sh" ]; then
        . "/home/sk/anaconda3/etc/profile.d/conda.sh"
    else
        export PATH="/home/sk/anaconda3/bin:$PATH"
    fi
fi
unset __conda_setup
# <<< conda initialize <<<

运行以下命令以使更改生效:

$source ~/.bashrc