CTS*_*_AE 14 disk-space ubuntu windows-10 windows-subsystem-for-linux
WSL 在 Windows 上使用了多少磁盘空间?
我发现您可以进入 Windows 的应用程序和功能,它会显示 WSL2“Ubuntu”的磁盘使用情况,但这似乎不包括WSL Legacy,或者可能是因为它报告的内容似乎超出了我的预期?
CTS*_*_AE 12
使用类似的工具ncdu
可以通过一个漂亮的 cli 界面轻松确定磁盘使用情况。
sudo apt install ncdu
Run Code Online (Sandbox Code Playgroud)
所以我们没有得到所有的 Windows 目录,我们需要排除该/mnt
目录。
ncdu --exclude /mnt
Run Code Online (Sandbox Code Playgroud)
在 Windows 的应用程序和功能下,它被Ubuntu
列为占用1.92 GB
ncdu
报告1.7 GiB (~1.82GB),这与 Windows 报告的非常接近。
我无法Bash on Ubuntu on Linux
通过 Windows找到占用了多少空间,但是我可以通过运行ncdu --exclude /mnt
.
Not*_*1ds 10
当然,随着 WSL 及其发行版的更新,这个问题的答案总是会发生变化。
测量任何给定 Windows 功能所使用的确切磁盘空间也非常困难,因为 Windows 也不断消耗和释放磁盘空间用于其他目的。也就是说,以下是今天在 Windows 11 上进行的一些测量:
简写:
笔记:
这些测量是使用 Windows 11 上发布的 WSL 版本完成的。
WSL 现在可以从 Microsoft Store 中以预览版形式获得,并且该版本在安装后将消耗更多磁盘空间,因为这些功能未内置于 Windows 中。我尚未测量 WSL 的 Store/Preview 版本。
此外,这些测量结果是采用 WSL2 分布进行的。WSL1 发行版消耗的初始大小将大于 WSL2,但是,WSL1会在删除文件时释放空间(与 WSL2 不同)。
细节:
在安装 WSL 之前全新安装 Windows 11 + 更新会消耗35,584,876,544
大量磁盘空间。
启用 WSL 功能并重新启动后,35,587,739,648
字节被消耗。减少约2,863,104
(2.8MB)。这是预期的,因为该功能内置于 Windows 中并且只是“启用”(不一定安装)。
请注意,在此阶段,WSL1 已安装并且可以与发行版一起使用。
启用虚拟机平台以启用 WSL2 会消耗额外的23,044,096
字节。然而,重新启动实际上收回了14,274,560
这一点,因为8,769,536
. 同样,这个较小的数字可能是因为该功能随 Windows 一起提供,并且刚刚启用。
下载 16.1MB WSL2 内核包并重新启动后,568,856,576
消耗了巨大的额外资源。这个数字应该有一个很大的警告,因为 Edge 是为了下载软件包而首次启动的。几乎可以肯定,大部分额外消耗的磁盘空间来自首次激活的 Edge 功能和其他副作用。
安装的内核本身占用73,476,524
字节。
安装 Ubuntu 20.04wsl --install -d Ubuntu
无疑是磁盘空间的最大消耗者。安装并重新启动后,1,648,529,408
使用了额外的空间(1.6GB)。
这有两个主要部分。首先是“应用程序”本身。这包括安装的 rootfs tarball。它存储在C:\Program Files\
普通用户通常无法访问的目录中。不过,您可以通过在管理会话中运行简单的 PowerShell 一行来检查 WSL tarball 大小:
Get-ChildItem -Recurse 'C:\Program Files\WindowsApps\' | Where-Object {$_.Name -eq 'install.tar.gz' }
Run Code Online (Sandbox Code Playgroud)
这表明 tarball 是452,534,052
字节。从技术上讲,这可以通过删除应用程序来恢复,但请注意——删除应用程序也会删除发行版。不过,可以将其解耦(通过wsl --export
/ --import
),然后删除“App”/tarball。
另一部分是实际分布本身,在 WSL2 下可以在虚拟 HDD 的大小中看到ext4.vhdx
。在运行任何命令之前, 的大小vhdx
为 1,173,397,504。
过了一段时间后sudo apt update && sudo apt upgrade -y
,发行版的大小增长到2,701,131,776
(大约 2.7GB)。请注意, adf
显示它是1,513,688k
。大小的巨大变化vhdx
可能是由于虚拟磁盘可以根据需要增长,但在从中删除文件时不会释放空间。有关详细信息,请参阅此问题。
Ubuntu 22.04 更新:基本vhdx
大小为 1.49GB。然而,由于它今天刚刚发布,它已经包含了最新的软件包。因此,首字母sudo apt update && sudo apt upgrade -y
不会占用任何额外的空间。
与 Ubuntu 20.04 相比,总体节省了约 1.2GB。同样,随着 Ubuntu 22.04 生命周期的进展,这种情况可能会发生变化。
归档时间: |
|
查看次数: |
22335 次 |
最近记录: |