什么是 tmpfs,为什么它占用了我的大部分硬盘空间?

什么是 tmpfs,为什么它占用了我的大部分硬盘空间?

我安装了 Ubuntu Server 来运行本地 Ark 服务器,但磁盘空间不足。当我去检查原因时(因为 ark 安装只有 ~6GB,而我为虚拟机分配了 30GB),我发现有 5 个文件系统总共使用了tmpfs16GB 的硬盘空间,另一个文件系统udev又使用了 5GB。

的结果df -h

在此处输入图片描述

为什么这些占用了我的大部分空间,我如何将该空间移至我的文件系统以便可以利用它?

编辑/dev/sda1已经有30GB了,但是我只能使用其中的15GB?

答案1

tmpfs 和 udev 是虚拟文件系统。它们不分配任何磁盘空间,而是动态使用 RAM 来存储文件。由于关闭系统时其内容会丢失,因此它们用于存储重启后无法保留的文件。

答案2

在寻找其他内容时偶然发现了这个问题,发现这个问题没有得到充分的解答。因此,这里为发现这个问题的其他人提供解释。默认的 ubuntu 服务器会创建一个卷组,但只将其中的一半分配给根卷。

巧合的是,您的 tmpfs 使用量与未分配空间大小相同。如果您不知道文件系统如何工作,我可以理解您为什么会认为您的 HDD 被用完了。

正如 Florian 所解释的,tmpfs 是 RAMdrive,与您的 HDD 无关。udev
是设备路径,它也与 HDD 空间无关。
(Linux 中的“一切都是文件”)

您需要做的是运行lvdisplay,它将显示您的可用空间,
(假设整个硬盘空间默认添加到池中)

要扩展它的使用

lvextend -l +100%FREE /dev/ubuntu-vg/root

(应该是/dev/mapper/ubuntu--vg-root 映射到/dev/ubuntu-vg/root)

一旦卷扩展,您就需要扩展文件系统,这可以通过以下方式完成

resize2fs /dev/mapper/ubuntu--vg-root

Failed to preallocate: Not enough disk space但是,即使您df -h说使用率为 64%, 您最初的问题似乎也发生了。
也许 5.0GB 可用空间是系统保留空间,通常df -h不会显示这一点。可能是您试图写入只读空间,我想知道 /home/douglas/.Private 挂载是否与此有关。 您可以使用以下命令
检查挂载选项mount

相关内容