Windows (WSL v2) 中 $HOME 目录的位置是什么?
即我可以输入什么地址Windows Explorer
来访问$HOME
WSL 安装中的目录。
...我创建了一个测试文件夹,然后尝试在命令提示符中找到它,但它没有显示?
外部链接/已审核现有答案但未回答问题
- WSL for linux 文件存储位置 S/U:提及
%LOCALAPPDATA%\Packages\TheDebianProject
但此路径不存在 - Windows 10 #1 S/O中“Bash on Ubuntu on Windows”的 .bashrc 位置:引用
%LocalAppData%\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs\home\USER
,但此路径不存在(AFAIK 这是应用于WSL 1的旧方法) - Windows 10 #2 S/O中“Bash on Ubuntu on Windows”的 .bashrc 位置:引用
%LocalAppData%\Lxss\home\USER
,但此路径也不存在。 - 设置 WSL 开发环境 Microsoft.com:不覆盖 Windows 中的 $HOME 位置
- WSL 常见问题 Microsoft.com:不涵盖 Windows 中的 $HOME 位置
使用 WSL2,您可以在虚拟机中工作 – 整个 Linux 环境是一个在 Hyper-V 上运行的 VM,并有一个
.vhdx
存储其 Ext4 格式磁盘的映像(包括 /home 中的所有文件)。该图像位于 的某个子目录中
~\AppData\Local\Packages
,具体取决于您安装的发行版(每个发行版都是一个单独的“应用程序”)。有关更多详细信息,请参阅如何管理 WSL 磁盘空间。请注意,虽然您可以在 Windows 中直接附加 .vhdx,但它仍然无法识别 Ext4 文件系统。
对于 WSL1,Linux 文件系统作为单独的文件存储在
rootfs
目录中(位于 AppData 下的同一位置)。然而,这些文件并不意味着可以直接访问,因为它们具有存储特定于 Linux 的元数据的隐藏属性(例如 Linux 文件权限);直接编辑文件可能会丢失扩展属性。不确定这是否对您的情况有帮助。在我的 WSL1 实例中,Linux 文件夹列在 Windows 资源管理器的新“Linux”部分中。单击不同的安装实例名称来探索或尝试使用 UNC 路径的 dir,如下所示:
在资源管理器中,只需找到所需的文件夹,“复制路径”将提供该文件夹的 UNC 路径,您可以将其粘贴到 Windows 命令提示符中。
$家庭位置
要访问 $home类型:
\\wsl.localhost\Ubuntu\home\{username}
进入 Windows 资源管理器笔记:
Ubuntu
是默认安装的Linux版本('distribution'),如果您选择安装不同的'distro',则需要更改这部分{username}
是您在 WSL 设置中指定的用户,不一定是您的 Windows 用户名.vhdx
文件)内,但是 Windows 将文件内容公开.vhdx
为上面列出的虚拟网络路径。.vhdx
文件存储在:%LocalAppData%\Packages\CanonicalGroupLimited.Ubuntu_79rhkp1fndgsc\LocalState
致谢
• @DuncG 的回答(用作基础,然后进行澄清和扩展)
• @Yisroel-tech 的开发博客链接(会向任何其他新的 WSL 用户推荐此链接)
• @user1686 获取更多信息和情况
.vhdx
解释