修复WSL无法访问/mnt/c的输入/输出错误
修复WSL无法访问/mnt/c的输入/输出错误
遇到这种在WSL Ubuntu里访问/mnt/c出现输入/输出错误的情况,我之前也碰到过,给你几个亲测有效的解决办法,按顺序尝试应该能搞定:
重启WSL服务:这是最常见也最简单的解决方式,大概率能解决挂载卡住的问题。先关掉所有WSL终端窗口,然后打开Windows的命令提示符(CMD)或者PowerShell,执行以下命令:
wsl --shutdown等个几秒钟后重新打开WSL Ubuntu终端,再试试执行
ls /mnt/c,应该就能正常访问了。手动重新挂载C盘:如果重启服务没用,那就手动卸载并重新挂载C盘。在WSL终端里执行以下命令:
sudo umount /mnt/c sudo mount -t drvfs C: /mnt/c这里
umount是卸载当前出问题的挂载,mount -t drvfs则是用WSL专门的Windows文件系统驱动重新挂载C盘到/mnt/c路径。检查并升级WSL版本:如果你的WSL还是版本1,可能存在一些兼容性问题,建议升级到WSL2。先查看当前WSL发行版的版本:
wsl --list --verbose如果显示你的Ubuntu是WSL1,执行以下命令升级(注意把
Ubuntu换成你实际的发行版名称):wsl --set-version Ubuntu 2另外,也可以执行
wsl --update更新WSL到最新版本,修复一些已知的挂载bug。检查Windows磁盘权限:这个情况比较少见,但如果前面的方法都没用,可以试试检查C盘的权限。右键Windows里的C盘→属性→安全选项卡,确保
Authenticated Users用户组拥有读取和执行的权限,必要时可以添加该权限后重启WSL再试。
备注:内容来源于stack exchange,提问作者Mike Pennington
相关产品推荐
相关产品推荐

