UB8*_*HZG -1 live-usb uninstall apt disk-usage
通过卸载软件包,我们期望会有更多的可用磁盘空间。然而,“ 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%
Run Code Online (Sandbox Code Playgroud)
然后,Firefox 将被“ sudo apt purge firefox”卸载,打印出以下消息。
After this operation, 220 MB disk space will be freed.
Do you want to continue? [Y/n]
Run Code Online (Sandbox Code Playgroud)
输入Y,执行卸载。
然后,“ df -h /”显示如下。
Size Used Avail Use%
1.9G 141M 1.7G 8%
Run Code Online (Sandbox Code Playgroud)
因此,已用空间增加了 81 MiB ( bc <<< '141-60'),尽管它应该减少 220 MB。
接下来,在卸载 Firefox 后,ffmpeg 将被“ sudo apt purge ffmpeg”卸载,打印出以下消息。
After this operation, 2058 kB disk space will be freed.
Do you want to continue? [Y/n]
Run Code Online (Sandbox Code Playgroud)
因此,应该释放 2 MB。输入Y,执行卸载。
然后,“ df -h /”显示如下。
Size Used Avail Use% Mounted on
1.9G 230M 1.6G 13% /
Run Code Online (Sandbox Code Playgroud)
因此,已用空间增加了 89 MiB ( bc <<< '230-141'),尽管它应该减少 2 MB。
问题1:为什么通过“ ”卸载会apt purge增加已用磁盘空间?
问题2:我什至不确定“ apt purge”是否删除过任何东西。我想知道“ apt purge”是否只是将软件包移出系统到一个临时空间,以便稍后 apt 可以撤消卸载。如果是这样的话,卸载的包到底在哪个目录中?我想删除它。即使关闭或重新启动机器会自动删除它,我也想在不关闭或重新启动机器的情况下删除它。
问题3:“ apt purge”似乎在磁盘上产生大量垃圾。垃圾在哪里?我想删除它。即使关闭或重新启动机器会自动删除它,我也想在不关闭或重新启动机器的情况下删除它。
我的 Ubuntu 是 Ubuntu MATE 20.04.3 Live。它是一个实时操作系统。我从 Ubuntu 安装介质(只读)使用 Ubuntu,而没有将 Ubuntu 安装到 HDD。默认情况下,Firefox 和 ffmpeg 都附带 Ubuntu MATE 20.04.3。我在Ubuntu Live启动完成后立即运行了上述实验。
- 更新 -
本题的目的是为了解决Live OS上的这个问题。与安装在 rw 文件系统上的真实操作系统相比,我更喜欢 Live 操作系统。如果“ apt purge”的工作方式根据 Live OS 还是已安装的操作系统而有所不同,并且如果已安装的操作系统上不存在此问题,则它根本无法解决我的情况。我想知道为什么Live OS上会出现这个问题。Live OS 是我问题的一部分。
- 更新 -
Thomas Ward 的以下评论澄清了我在 LiveOS 上运行时无法弄清楚的有关此问题的所有谜团。
差异作为不同的文件存储在内存中,因此,在实时操作系统映像和当前状态之间对系统进行的更改越大,您就会损失空间。
尤其是“差异作为不同文件存储在内存中”这一条款是最有用的信息。如果没有 Thomas Ward 的评论,Nmath 的回答并不能说服我。
我猜“内存”是指 RAM 磁盘,其中“ df -h /”报告已用空间和可用空间。
Nma*_*ath 10
“这是一个实时操作系统”
这就是原因。
实时会话基于只读文件系统。您在实时会话期间所做的任何更改都会写入此只读文件系统中。
因此,如果您删除应用程序,实际上并没有删除任何应用程序文件,但必须写入更多数据以适应您所做的更改。