wsl2中访问windows桌面需通过/mnt/c/users/yourname/desktop路径,或创建符号链接简化访问,并配置/etc/wsl.conf启用metadata选项以绕过ntfs权限拦截。

在Windows 10系统中使用WSL2时,想直接读取或编辑宿主机桌面上的文件,必须明确路径映射关系并避开NTFS权限拦截——因为桌面实际位于当前用户目录下,而非C:\Desktop这种独立根目录。
确认Windows桌面的真实物理路径
Windows桌面不是系统级固定路径,而是每个用户的个人文件夹软链接。打开PowerShell(非管理员),执行:
Get-Item "$env:USERPROFILE\Desktop" | Resolve-Path
输出类似 【C:\Users\YourName\Desktop】 的绝对路径,这就是你要挂载的目标位置。
注意:若你用的是微软账户同步的OneDrive桌面,该路径可能指向 OneDrive\桌面,此时需确保OneDrive已完成首次同步,否则/mnt/c/Users/YourName/Desktop将为空目录。
在WSL2中访问桌面文件的两种可靠方式
方法一:通过默认挂载点直接进入
WSL2启动后自动挂载C盘到/mnt/c,桌面路径即为:
【/mnt/c/Users/YourName/Desktop】
把上面命令中查到的YourName替换成你Windows登录用户名,例如ls /mnt/c/Users/Alice/Desktop即可列出文件。
方法二:创建符号链接简化访问
在WSL终端中执行:
ln -s "/mnt/c/Users/YourName/Desktop" ~/desktop
之后输入cd ~/desktop就能一键跳转,且该链接在所有后续会话中持续有效。
解决常见访问失败问题
第一步:检查/mnt/c是否可见
运行ls /mnt,若无c目录,说明WSL2未自动挂载——立即执行sudo mkdir -p /mnt/c && sudo mount -t drvfs C: /mnt/c。
第二步:绕过NTFS权限拒绝
若ls /mnt/c/Users/YourName/Desktop报错“Permission denied”,不是Linux权限问题,而是drvfs挂载时未启用metadata选项。需编辑/etc/wsl.conf:
sudo nano /etc/wsl.conf
写入以下内容并保存:
[automount]
enabled = true
options = "metadata,uid=1000,gid=1000"
第三步:强制重载配置
关闭所有WSL窗口→在PowerShell中运行wsl --shutdown→重新启动Ubuntu终端→再次尝试访问桌面路径。











