在 D:\WSL2Ubuntu 里导入了 WSL2 Ubuntu,为什么 wsl -d Ubuntu 启动后目录不是 D:\WSL2Ubuntu?
你在 D:\WSL2Ubuntu 里导入了 WSL2 Ubuntu,为什么 wsl -d Ubuntu 启动后目录不是 D:\WSL2Ubuntu?
这是因为:
📌 1. WSL 的根文件系统挂载方式
D:\WSL2Ubuntu 是 WSL 的存储位置(也就是你导入的发行版的 rootfs 存放目录,里面有 ext4.vhdx 之类的文件)。
这个目录在 Windows 下是“WSL 的容器文件”,并不是直接映射到 /mnt/d/WSL2Ubuntu。
启动 wsl -d Ubuntu 后,你看到的 Linux 路径 /,就是从那个 ext4.vhdx 文件里挂载出来的 Linux 根目录。
所以你在 WSL 里面看到的 / 根目录,其实就对应了 D:\WSL2Ubuntu\ext4.vhdx 里的文件系统内容,而不是直接 Windows 的 D 盘路径。
📌 2. 为什么进入 /mnt/c/Users/xueqing
因为 WSL 默认启动时,会把工作目录设为 Windows 当前用户目录 /mnt/c/Users/你的用户名。
所以看起来像是“跑到 C 盘去了”。
但其实根目录 / 已经是你在 D 盘导入的 Ubuntu 系统文件了。
你可以验证一下:
cd /
ls
你会看到标准的 Linux 根目录结构:
bin boot dev etc home lib root usr var ...
这些都来自 D:\WSL2Ubuntu\ext4.vhdx,并不是 Windows C 盘的东西。
📌 3. 如果你想默认进入 /home/用户名
你可以修改 默认启动目录:
编辑 /etc/wsl.conf:
[user]
default=你的用户名
[boot]
command="cd ~"
然后:
wsl --shutdown
再启动,就会直接进入 Linux 用户的 home 目录 /home/用户名。
✅ 总结:
D:\WSL2Ubuntu 是 存储位置,WSL 会把它当成一个虚拟磁盘(ext4.vhdx),挂载为 Linux 的 / 根目录。
默认进入 /mnt/c/Users/xueqing 只是启动目录问题,不影响实际根文件系统在 D 盘。
wsl安装之后找不到nvcc?
- CUDA Toolkit 里有没有 nvcc
 
先在 WSL2 里面看看 nvcc 是否安装成功:
which nvcc
nvcc --version
如果 which nvcc 没有输出,说明 CUDA Toolkit 没加到 PATH。
比如 CUDA 一般装在 /usr/local/cuda-12.2/bin/nvcc,你需要在 ~/.bashrc 里加:
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
然后 source ~/.bashrc 再试。
未经作者同意请勿转载
本文来自博客园作者:aixueforever,原文链接:https://www.cnblogs.com/aslanvon/p/19072573

                
            
        
浙公网安备 33010602011771号