无法从WSL内部访问Windows安装的Jupyter Notebook求助
解决WSL Ubuntu无法启动Jupyter Notebook的问题
核心问题说明
WSL是独立的Linux环境,Windows系统的Anaconda/Jupyter是Windows可执行文件(.exe格式),无法直接在WSL的Ubuntu中运行。你看到的python --version显示3.11,大概率是WSL自动挂载了Windows的PATH,调用的是Windows系统的Python,而非WSL本地的Python环境。
推荐解决方案:在WSL Ubuntu中搭建独立的Jupyter环境
方法1:用系统Python+pip安装Jupyter
- 确认WSL本地Python路径:执行
which python,如果输出是/usr/bin/python或/usr/bin/python3,说明是系统自带Python。 - 安装pip(若未安装):
sudo apt install python3-pip - 安装Jupyter:
pip3 install jupyter - 启动Jupyter:
启动后会生成访问链接,复制到Windows浏览器打开即可。jupyter notebook
方法2:在WSL中安装Linux版Anaconda
如果你习惯用Anaconda环境:
- 下载Linux版Anaconda安装包:
(可替换为官网最新版本的下载链接)wget https://repo.anaconda.com/archive/Anaconda3-2024.02-1-Linux-x86_64.sh - 运行安装脚本:
按终端提示完成安装(注意选择是否将Anaconda加入系统PATH)。bash Anaconda3-2024.02-1-Linux-x86_64.sh - 重启WSL终端(或执行
source ~/.bashrc)让环境生效。 - 启动Jupyter:
jupyter notebook
可选:排查并修复PATH混乱问题
如果WSL的PATH包含Windows路径导致环境冲突:
- 检查当前Python路径:执行
which python,若输出以/mnt/c/开头,说明调用的是Windows的Python。 - 临时屏蔽Windows PATH:
执行后再用WSL本地Python安装Jupyter。export PATH=$(echo $PATH | tr ':' '\n' | grep -v '/mnt/c' | tr '\n' ':') - 永久屏蔽Windows PATH:
编辑/etc/wsl.conf文件(需sudo权限),添加以下内容:
保存后执行[interop] appendWindowsPath = falsewsl --shutdown重启WSL,再打开终端配置环境。
额外排查点
- 检查Jupyter是否已安装:执行
pip3 list | grep jupyter,无输出则说明未安装。 - 启动时若有报错,根据错误信息针对性处理(比如缺失依赖则用
pip3 install安装对应模块)。
内容的提问来源于stack exchange,提问作者Vol Ume
相关产品推荐
相关产品推荐

