LiveOS - 使用“apt purge”进行卸载应该会增加可用磁盘空间,但实际上却减少了可用磁盘空间。为什么?

LiveOS - 使用“apt purge”进行卸载应该会增加可用磁盘空间,但实际上却减少了可用磁盘空间。为什么?

通过卸载软件包,我们期望会有更多的可用磁盘空间。然而,“ sudo apt purge PACKAGE”实际上减少了可用磁盘空间。似乎“ apt purge”产生的垃圾比它删除的内容还多。(编辑:此问题仅发生在 LiveOS 上,而不会发生在已安装的操作系统上。后来发现,这种奇怪的现象来自 LiveOS 不可避免的特性,而它apt本身是无害的。)

在下面的演示实验中,“ apt purge”先卸载了 Firefox,然后卸载了 ffmpeg。每次“ apt purge”之前和之后,“ ”都会检查磁盘的已用空间和空闲空间(可用空间)df -h /

在第一个“ apt purge”之前,“ df -h /”显示了以下内容。如果存在 -h,df 打印的 G 和 M 分别表示 GiB 和 MiB。

Size  Used Avail Use%
1.9G   60M  1.8G   4%

然后,Firefox 将被“ sudo apt purge firefox”卸载,并打印以下消息。

After this operation, 220 MB disk space will be freed.
Do you want to continue? [Y/n]

输入Y,执行卸载。

然后,“ df -h /”显示了以下内容。

Size  Used Avail Use%
1.9G  141M  1.7G   8%

bc <<< '141-60'因此,尽管应该减少 220 MB,但使用的空间却增加了 81 MiB ( )。

接下来,卸载 Firefox 后,要通过“ sudo apt purge ffmpeg”卸载 ffmpeg,它会打印以下消息。

After this operation, 2058 kB disk space will be freed.
Do you want to continue? [Y/n]

因此,应该释放 2 MB。输入 Y,然后执行卸载。

然后,“ df -h /”显示了以下内容。

Size  Used Avail Use% Mounted on
1.9G  230M  1.6G  13% /

bc <<< '230-141'因此,尽管应该减少 2 MB,但已用空间却增加了 89 MiB ( )。

问题1:为什么通过“ ”卸载会导致apt purge已使用的磁盘空间增加?

问题 2:我甚至不确定“ apt purge”是否会删除任何东西。我想知道“ apt purge”是否只是将软件包从系统中移出到一个临时空间,以便 apt 稍后可以撤消卸载。如果是这样,卸载的软件包究竟停留在哪个目录中?我想删除它。即使关闭或重新启动机器会自动删除它,我也想在不关闭或重新启动机器的情况下删除它。

问题 3:“ apt purge”似乎在磁盘上产生大量垃圾。垃圾在哪里?我想删除它。即使关机或重启机器会自动删除它,我想在不关机或重启机器的情况下删除它。

我的 Ubuntu 是 Ubuntu MATE 20.04.3 Live。它是一个 Live 操作系统。我使用 Ubuntu 安装媒体(只读)中的 Ubuntu,而没有将 Ubuntu 安装到硬盘上。默认情况下,Firefox 和 ffmpeg 都附带 Ubuntu MATE 20.04.3。Ubuntu Live 启动完成后,我立即运行了上述实验。

- 更新 -

这个问题的目的是解决 Live OS 上的这个问题。我更喜欢 Live OS,而不是安装在 rw 文件系统上的真实 OS。如果“ apt purge”的工作方式因 Live OS 或已安装的 OS 而不同,并且已安装的 OS 上不存在此问题,则它根本无法解决我的情况。我想知道为什么 Live OS 上存在此问题。Live OS 是我问题的一部分。

- 更新 -

Thomas Ward 的以下评论解答了我在 LiveOS 上运行时无法弄清楚的有关此问题的所有谜团。

差异作为不同的文件存储在内存中,因此在实时操作系统映像和当前状态之间进行系统更改越大,丢失的空间就越大。

尤其是“差异作为不同的文件存储在内存中”这一条款是最有用的信息。如果没有 Thomas Ward 的这条评论,Nmath 的回答就无法说服我。

我猜测“内存”是指 RAM 磁盘,“ df -h /”会报告其已用空间和可用空间。

答案1

“这是一个实时操作系统”

这就是原因。

实时会话基于只读文件系统。您在实时会话期间所做的任何更改都会写入此只读文件系统。

因此,如果您删除应用程序,您实际上并没有删除任何应用程序文件,但必须写入更多数据来适应您所做的更改。

相关内容