在最近更新之前,WSL根文件系统始终位于C:\Users\%username%\AppData\Local\lxss
,但现在从App Store安装Linux时,每次安装都可能不同。例如,对于我机器上的Ubuntu,它是C:\Users\%username%\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs
有没有办法从当前的WSL会话中检测此路径?
答案 0 :(得分:0)
在PowerShell中:
> echo ($env:LOCALAPPDATA + '\Packages\' + ($(get-appxpackage).PackageFamilyName|findstr UbuntuonWindows))
C:\Users\Reker\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc
您可以通过与Windows cmd.exe或powershell.exe互操作在Windows 14393或更高版本的bash.exe中运行以上命令
答案 1 :(得分:0)
正如其他用户所指出的那样,如今您可以安装多个Linux发行版,并且每个发行版在不同的文件夹中都有自己的文件系统。每个文件系统的位置都可以从Windows注册表中获取。
您可以运行regedit
并查找信息。数据位于
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Lxss
此外,您可以启动PowerShell窗口并执行以下命令来确定所有已安装的Linux发行版的信息。
(Get-ChildItem "HKCU:\Software\Microsoft\Windows\CurrentVersion\Lxss" -Recurse)
要获取文件系统的位置,可以运行
(Get-ChildItem HKCU:\Software\Microsoft\Windows\CurrentVersion\Lxss | ForEach-Object {Get-ItemProperty $_.PSPath}) | select DistributionName,BasePath