在数据科学和机器学习领域,Anaconda 已经成为 Python 环境管理的标准工具之一。对于刚接触 Ubuntu 系统的开发者来说,正确安装和配置 Anaconda 是开启数据分析之旅的第一步。本文将带你从零开始,在 Ubuntu 24.04 上完成 Anaconda 的完整安装过程,并分享一些只有老手才知道的实用技巧。
不同于简单的安装步骤罗列,我们会深入探讨每个环节的注意事项,解释背后的原理,并提供多种灵活配置方案。无论你是完全的新手,还是有一定经验但想优化现有环境的开发者,都能从本文中找到有价值的内容。
在开始安装之前,做好充分的准备工作可以避免很多后续问题。首先确认你的 Ubuntu 24.04 系统已经更新到最新状态:
bash复制sudo apt update && sudo apt upgrade -y
这个命令会更新软件包列表并升级所有可更新的软件。对于新安装的 Ubuntu 系统,这一步尤为重要,因为它能确保系统组件和依赖库都是最新的。
检查系统架构也很关键,虽然大多数现代电脑都是 64 位系统,但确认一下总没错:
bash复制uname -m
预期输出应该是 x86_64,表示 64 位系统。如果是 i386 或 i686,则表示 32 位系统,这种情况下需要下载对应的 32 位 Anaconda 安装包。
访问 Anaconda 官方下载页面时,建议使用最新稳定版本而非测试版。截至本文撰写时,最新版本为 Anaconda3-2024.10。你可以直接在终端中使用 wget 命令下载,避免浏览器下载后还需要手动移动文件的麻烦:
bash复制wget https://repo.anaconda.com/archive/Anaconda3-2024.10-Linux-x86_64.sh
下载完成后,验证文件的完整性是个好习惯。比较下载文件的 SHA-256 校验和与官网提供的是否一致:
bash复制sha256sum Anaconda3-2024.10-Linux-x86_64.sh
将输出结果与官网公布的校验值对比,确保文件在下载过程中没有损坏或被篡改。
现在来到实际的安装环节。使用 bash 命令运行下载的安装脚本:
bash复制bash Anaconda3-2024.10-Linux-x86_64.sh
安装过程中有几个关键决策点需要特别注意,它们会影响后续的使用体验。
默认情况下,Anaconda 会安装在用户主目录下的 anaconda3 文件夹中。对于大多数单用户开发环境,这是最合理的选择。但如果你有特殊需求,可以考虑以下替代方案:
| 安装位置 | 适用场景 | 注意事项 |
|---|---|---|
| 默认路径 (~/anaconda3) | 个人开发环境 | 最简单,权限问题最少 |
| /opt/anaconda3 | 多用户共享环境 | 需要 sudo 权限,后续使用可能涉及权限问题 |
| 自定义路径 | 特殊存储需求 | 需要确保路径有足够空间,并记住自定义位置 |
如果选择自定义路径,建议遵循 Linux 的文件系统层次结构标准(FHS)。例如,对于个人使用的自定义位置,可以放在 ~/apps/anaconda3;对于系统级安装,/usr/local/anaconda3 是个不错的选择。
安装接近尾声时,会询问是否要初始化 conda:
code复制Do you wish the installer to initialize Anaconda3
by running conda init? [yes|no]
这个选择决定了 conda 环境是否会自动集成到你的 shell 中。选择 yes 的好处是开箱即用,但会修改你的 shell 配置文件(如 .bashrc)。如果你更倾向于手动管理环境,可以选择 no,然后通过以下命令在需要时激活 conda:
bash复制source ~/anaconda3/bin/activate
安装完成后,先关闭当前终端窗口再打开一个新的,这样更改的配置文件才会生效。然后验证安装是否成功:
bash复制conda --version
如果看到版本号输出(如 conda 24.1.0),说明安装基本成功。接下来我们可以进行一些优化配置。
国内用户可能会发现 conda 的默认下载速度较慢。我们可以更换为国内镜像源来加速包下载。清华大学提供了优质的 Anaconda 镜像:
bash复制conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --set show_channel_urls yes
这些命令会修改 ~/.condarc 文件。如果你想恢复默认设置,只需删除这个文件即可。
很多开发者不喜欢 conda 自动激活 base 环境的行为,因为这可能会干扰系统自带的 Python 环境。禁用这个功能很简单:
bash复制conda config --set auto_activate_base false
之后,当你确实需要使用 conda 环境时,可以手动激活:
bash复制conda activate base
即使按照步骤操作,有时也会遇到各种问题。这里总结了一些常见问题及其解决方法。
如果在终端输入 conda 命令得到 command not found 错误,通常是因为 shell 没有找到 conda 的可执行文件。解决方法是将 conda 的路径添加到 PATH 环境变量中。编辑 ~/.bashrc 文件,在末尾添加:
bash复制export PATH=~/anaconda3/bin:$PATH
然后运行 source ~/.bashrc 使更改生效。
有时安装 conda 后,终端提示符前会出现 (base) 字样,即使你已经禁用了自动激活。这通常是因为 conda 初始化脚本修改了你的 shell 配置。要彻底解决这个问题:
bash复制conda init --reverse bash
这个命令会撤销 conda 对 shell 配置的修改。之后你可以手动管理 conda 环境的激活。
Anaconda 及其包会占用大量磁盘空间。如果你在安装过程中遇到空间不足的问题,可以考虑:
bash复制sudo apt autoremove
sudo apt clean
对于想要更深入掌握 Anaconda 的用户,这里分享一些进阶技巧。
conda 的强大之处在于可以轻松管理多个 Python 环境。例如,创建一个使用 Python 3.9 的新环境:
bash复制conda create -n py39 python=3.9
激活这个环境:
bash复制conda activate py39
查看所有可用环境:
bash复制conda env list
当你配置好一个完美的开发环境后,可以将其导出为 YAML 文件,方便在其他机器上复现:
bash复制conda env export > environment.yml
其他人可以通过这个文件创建相同的环境:
bash复制conda env create -f environment.yml
conda 有时会比较慢,特别是解决依赖关系时。可以尝试以下优化:
使用 mamba 替代 conda,它是 conda 的快速替代品:
bash复制conda install -n base -c conda-forge mamba
之后可以用 mamba 命令代替 conda,语法完全相同但速度更快
定期清理缓存和未使用的包:
bash复制conda clean --all
为了保持 Anaconda 环境的健康,建议遵循以下维护准则:
定期更新:保持 conda 和基础环境更新
bash复制conda update -n base -c defaults conda
conda update --all
环境隔离:为不同项目创建独立环境,避免包冲突
谨慎使用 pip:在 conda 环境中,优先使用 conda 安装包。如果必须使用 pip,先尝试用 conda 安装,再用 pip 安装剩余包
备份重要环境:定期导出关键环境的配置文件
监控磁盘使用:conda 环境可能会占用大量空间,定期清理不需要的环境和缓存
在长期使用中,我发现为每个项目创建独立环境虽然看起来麻烦,但实际上能避免很多"这个项目能用,那个项目就报错"的情况。另外,记录每个环境的创建目的和主要依赖也是个好习惯,可以用简单的 README 文件保存在环境目录中。