WSL 下安装 Miniconda 笔记
WSL 下安装 Miniconda 笔记
前言
在 WSL 中运行 GitHub 项目时,经常需要创建独立的 Python 环境。
如果直接执行:
1 | conda create -n locagent python=3.12 -y |
出现:
1 | conda: command not found |
说明当前 WSL 里还没有安装 Conda。Windows 中安装过 Anaconda 或 Miniconda,并不代表 WSL 里也能直接使用,因为 WSL 是一套独立的 Linux 环境。
一、为什么要在 WSL 里安装 Miniconda
1.1 Windows 和 WSL 是两套环境
Windows 里的 Python、Conda、pip 包,和 WSL 里的 Python、Conda、pip 包不是同一套。
所以要在 WSL 中运行 Linux 项目,就需要在 WSL 中单独安装一套 Miniconda。
1.2 为什么选择 Miniconda
Miniconda 比 Anaconda 更轻量,只提供 Conda、Python 和少量基础工具。
后续项目需要什么包,再通过 conda install 或 pip install 安装即可。
可以理解为:
- Anaconda = 装修好的大房子,东西很多
- Miniconda = 简洁毛坯房,需要什么再装什么
二、安装 Miniconda
2.1 进入 WSL
先进入 WSL 终端:
1 | wsl |
然后回到用户家目录:
1 | cd ~ |
2.2 安装 wget
如果系统里没有 wget,先安装:
1 | sudo apt update |
wget 的作用是从网络下载文件。
含义是:wget = web get,从网络上获取文件,作用类似于你在浏览器里点击“下载”,只不过它是在终端里完成下载。
比如浏览器里访问:
1 | https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh |
会下载一个 Miniconda 安装脚本。
在 WSL 里可以用:
1 | wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh |
效果就是:把这个链接对应的文件下载到当前目录。
2.3 下载 Miniconda 安装脚本
执行:
1 | wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh |
这会把 Miniconda 的 Linux 安装脚本下载到当前目录。
安装过程中会让你按回车、输入 yes。安装路径默认是:
1 | /home/<你的用户名>/miniconda3 |
直接默认即可。官方文档也建议不确定时接受默认安装位置。
最后它会问类似:
1 | Do you wish to initialize Miniconda3 by running conda init? |
这里输入:
1 | yes |
这个操作会让以后打开 WSL 终端时能识别 conda 命令。
三、让 conda 命令生效
3.1 重新加载终端配置
安装完成后执行:
1 | source ~/.bashrc |
这一步的作用是让刚才写入 .bashrc 的 conda 配置立即生效。
也可以关闭 WSL 终端后重新打开。
3.1.1 理解~/.bashrc
你在 WSL 里的~打开终端,其实用的是一个 shell,一般是 bash。
每次打开 bash 终端时,它都会读取一个配置文件:~/.bashrc
这个文件里面会放一些终端启动时需要加载的配置,比如:
- 环境变量
- 命令别名
- conda 初始化配置
- PATH 路径配置
可以理解为:.bashrc 是 WSL 终端启动时自动读取的配置清单
3.1.2 理解~
~表示当前用户的家目录。
比如你的用户名是 like,那么:~就等于:/home/like
所以:~/.bashrc其实就是:/home/like/.bashrc
3.1.2 source 是什么意思
source意思是:在当前终端里执行某个配置文件,让里面的配置立刻生效。
所以:source ~/.bashrc
完整意思是:
- 在当前终端里,重新执行 /home/like/.bashrc 这个配置文件,
- 让里面的新配置马上生效。
3.2 检查是否安装成功
执行:
1 | conda --version |
果能看到类似:说明 Miniconda 已经安装成功。
也可以执行:
1 | conda list |
查看当前 base 环境中的包。
四、创建项目环境
4.1 回到项目目录
例如 LocAgent 项目在:
1 | ~/Code/javatest |
进入项目目录:
1 | cd ~/Code/javatest |
4.2 创建 Conda 环境
创建一个名为 locagent 的环境:
1 | conda create -n test python=3.12 -y |
其中:
1 | -n test:环境名字叫 test |
4.3 激活环境
执行:
1 | conda activate test |
激活成功后,终端前面会出现:
1 | (test) |
例如:
1 | (test) like@likerhood:~/Code/javatest$ |
这说明当前已经进入 test 环境。
4.4 安装项目依赖
一般根据项目 README 操作。常见命令是:
1 | pip install -r requirements.txt |
如果项目使用其他依赖文件,就按照项目说明执行。
五、常见问题
5.1 conda: command not found
说明 WSL 中没有安装 Miniconda,或者安装后没有执行:
1 | source ~/.bashrc |
可以先重新加载配置:
1 | source ~/.bashrc |
再检查:
1 | conda --version |
5.2 终端前面出现 (base)
安装 Miniconda 后,有时终端前面会自动出现:
1 | (base) |
这表示当前进入了 Conda 的基础环境。
一般不建议直接在 base 里安装项目依赖,最好为每个项目单独创建环境。
例如:
1 | conda create -n 环境名 python=3.12 -y |
5.3 Windows 已经安装 Conda,WSL 还需要安装吗
需要。
Windows 和 WSL 是两套环境。Windows 里的 Conda 不能直接当作 WSL 的 Linux Conda 使用。
可以理解为:
1 | Windows 的 Conda = Windows 房间里的工具箱 |
运行 Linux 项目时,应该使用 WSL 里的 Conda。
5.4 Terms of Service(服务条款)
创建虚拟环境是报错如下:
1 | (base) like@likerhood:~/javatest$ conda create -n test python=3.12 -y |
创建环境时,Conda 要从这两个默认源下载包:
1 | https://repo.anaconda.com/pkgs/main |
但你还没有接受它们的条款,所以 Conda 拦住了。Anaconda 官方文档也说明,可以用 conda tos accept --override-channels --channel ... 来接受指定 channel 的 Terms of Service。
直接按它提示执行这两条:
1 | conda tos accept --override-channels --channel https://repo.anaconda.com/pkgs/main |
然后重新创建环境:
1 | conda create -n test python=3.12 -y |
成功后激活:
1 | conda activate test |
如果你不想用 Anaconda 默认源,也可以改用社区源 conda-forge,但你现在最简单的做法就是先接受这两个默认源条款。
总结
在 WSL 中出现 conda: command not found,说明当前 Linux 环境里还没有配置 Conda。解决方法是在 WSL 中单独安装 Miniconda,然后通过 conda create 创建项目环境。
推荐流程是:
1 | cd ~ |
之后再进入项目目录,创建并激活环境:
1 | cd ~/Code/javatest |
简单来说,WSL 运行 Linux 项目,就需要在 WSL 中准备 Linux 版本的 Conda 和 Python 环境。这样项目依赖更清晰,也更符合 GitHub 项目的原始运行环境。