在 Ubuntu 20.04 LTS 上安装和使用 Btrfs
Btrfs(B 树文件系统)是一种适用于 Linux 的现代写时复制 (CoW) 文件系统。它旨在实现许多高级文件系统功能,同时专注于容错、修复和轻松管理。 Btrfs 文件系统旨在支持高性能和大容量存储服务器的需求。
如果您想了解有关 Btrfs 文件系统的更多信息,请查看我的文章Btrfs 文件系统简介。在本文中,我将向您展示如何在 Ubuntu 20.04 LTS 上安装和使用 Btrfs。那么,让我们开始吧。
安装 Btrfs 文件系统
Btrfs 文件系统包可在 Ubuntu 20.04 LTS 的官方包存储库中找到,因此您可以从那里轻松安装它。
首先,使用以下命令更新 APT 软件包存储库缓存:
要在 Ubuntu 20.04 LTS 上安装 Btrfs 文件系统,请运行以下命令:
应安装 Btrfs 文件系统。
磁盘分区
您不必对 HDD/SSD 进行分区即可创建 Btrfs 文件系统;您可以在裸露的未分区 HDD/SSD 上创建它。但在使用 Btrfs 文件系统格式化 HDD/SSD 之前,您可能需要对 HDD/SSD 进行分区。您可以使用以下命令列出计算机的所有存储设备和分区:
我的计算机上有一个 HDD sdb,如下面的屏幕截图所示。我将对 HDD sdb 进行分区,并使用 Btrfs 文件系统格式化分区,以便在本文中进行演示。
为了对硬盘sdb进行分区,我将使用cfdisk分区工具。您可以使用cfdisk打开硬盘sdb > 分区工具如下:
选择gpt并按
要创建新分区,请选择可用空间,然后选择[新建],然后按
输入您要创建的分区的大小。我将创建一个 10 GB 的分区。因此,我将输入10G。
您可以使用以下符号创建不同大小/单位的分区:M – 以兆字节为单位的分区大小G – 以千兆字节为单位的分区大小T – 分区大小(以 TB 为单位)S – 要用于分区的扇区数完成后,按
应该创建一个新分区(在我的例子中是sdb1)。
让我们创建另一个分区。为此,请选择可用空间,然后选择[新建],然后按
输入分区的大小,然后按
应该创建一个新分区(在我的例子中是sdb2)。
要将更改写入磁盘,请选择[写入]并按
要确认更改,请输入yes,然后按
分区表应保存到磁盘上。
要退出cfdisk程序,请选择[退出]并按
使用 Btrfs 文件系统格式化磁盘
在本节中,我将向您展示如何使用 Btrfs 文件系统格式化分区。在本节的前面部分中,我创建了 2 个分区,sdb1 和 sdb2文章。我将使用 Btrfs 文件系统格式化分区 sdb1 以进行演示。
要使用 Btrfs 文件系统格式化分区 sdb1,请运行以下命令:
注意:这里,-L标志设置分区的标签。在本例中,分区标签是数据。
分区 sdb1 应使用 Btrfs 文件系统进行格式化。
挂载 Btrfs 文件系统
要挂载 Btrfs 文件系统,您需要创建一个可以挂载 Btrfs 文件系统的目录(挂载点)。
要创建目录/挂载点 /data,请运行以下命令:
创建 /data 挂载点后,您可以使用以下命令在 /data 挂载点上挂载 sdb1 Btrfs 文件系统:
Btrfs 分区 sdb1 应安装在 /data 挂载点中,如下面的屏幕截图所示。
检查Btrfs文件系统使用信息
检查 Btrfs 文件系统的使用信息非常重要,检查方法有很多。让我们看看其中的一些。
您可以使用以下命令查看计算机上所有 Btrfs 文件系统的使用情况摘要:
应显示计算机上所有 Btrfs 文件系统的使用情况摘要。您应在此处找到以下使用信息:
计算机上每个 Btrfs 文件系统的标签。
您计算机上每个 Btrfs 文件系统的 UUID。
添加到计算机上每个 Btrfs 文件系统的设备总数。
添加到计算机上每个 Btrfs 文件系统的每个存储设备的磁盘使用信息。
要查找有关安装在特定目录路径(例如 /data)上的特定 Btrfs 文件系统的磁盘使用信息,请运行以下命令:
可以看到,显示了很多/data挂载点上挂载的Btrfs分区的磁盘使用信息。
在顶部,您应该可以找到 Btrfs 文件系统的总磁盘大小。
您还应该找到 Btrfs 文件系统已分配的磁盘空间量(保留用于存储数据)以及从分配/保留的磁盘空间中使用的磁盘空间量。
您还应该找到 Btrfs 文件系统尚未分配(未保留用于存储数据)的磁盘空间量以及仍可用于存储新数据的估计磁盘空间量(已分配和未分配)。
在底部,您应该找到以下信息:
添加到 Btrfs 文件系统的所有存储设备中分配和用于数据的磁盘空间总量。
添加到 Btrfs 文件系统的每个存储设备中为数据分配的磁盘空间量。
添加到 Btrfs 文件系统的所有存储设备中为元数据分配和使用的磁盘空间总量。
添加到 Btrfs 文件系统的每个存储设备中为元数据分配的磁盘空间量。
添加到 Btrfs 文件系统的所有存储设备中为 Btrfs 系统数据分配和使用的磁盘空间总量。
添加到 Btrfs 文件系统的每个存储设备中为 Btrfs 系统数据分配的磁盘空间量。
添加到 Btrfs 文件系统的每个存储设备中未分配的磁盘空间量。
在底部,您还应该找到用于为数据、元数据和系统数据分配磁盘空间的方法(即 single、DUP):
对于单模式分配,Btrfs 文件系统将仅保留一个分配实例。不会有任何重复。
对于DUP模式分配,Btrfs文件系统将出于相同目的将磁盘空间分配在文件系统的不同部分。因此,相同数据的多个副本(通常是两个)将保留在文件系统上。
通常,数据以单一模式分配。 元数据和系统数据以DUP模式分配。
在单模式下,请注意,Btrfs 文件系统可以使用所有分配的磁盘空间。
在DUP模式下,请注意,Btrfs 文件系统可以使用总分配磁盘空间的一半磁盘空间。
要查看安装在 /data 目录中的 Btrfs 文件系统的数据、元数据和系统分配和使用的磁盘空间摘要,请运行以下命令:
您还可以列出挂载在 /data 目录下的 Btrfs 文件系统的每个文件和目录的磁盘使用信息,如下所示:
最后,应该显示 /data btrfs 文件系统的所有文件和目录的磁盘使用情况摘要。
要仅查看安装在 /data 目录上的 Btrfs 文件系统的文件和目录的磁盘使用情况摘要,请运行以下命令:
向 Btrfs 文件系统添加更多存储设备
如果您的 Btrfs 文件系统需要更多磁盘空间,您可以向 Btrfs 文件系统添加更多存储设备或分区以扩展文件系统的磁盘空间。
例如,要在挂载于 /data 目录的 Btrfs 文件系统上添加分区 sdb2,请运行以下命令:
如您所见,新分区sdb2已添加到挂载在/data目录上的Btrfs文件系统中。
正如您所看到的,挂载在/data目录上的Btrfs文件系统的大小已经增加。
在引导时挂载 Btrfs 文件系统
设置 Btrfs 文件系统后,您不希望每次启动计算机时都手动挂载它,而是自动挂载它。让我们看看如何做到这一点。
首先,找到挂载在/data目录下的Btrfs文件系统的UUID,如下所示:
就我而言,Btrfs 文件系统的 UUID 是 c9333c36-f8bf-4825-9706-8b5f28cb4e34。这对你来说会有所不同。因此,请确保从现在开始将其替换为您的。
使用nano文本编辑器打开/etc/fstab文件,如下所示:
在 /etc/fstab 文件末尾,输入以下行:
完成后,按
为了使更改生效,请使用以下命令重新启动计算机:
计算机启动后,您应该会看到 Btrfs 文件系统在启动时已正确安装在 /data 目录中,如下面的屏幕截图所示。
结论
在本文中,我向您展示了如何在 Ubuntu 20.04 LTS 上安装和使用 Btrfs 文件系统。此处提供的信息应该可以帮助您开始使用 Ubuntu 20.04 LTS 上的 Btrfs 文件系统。