在FreeBSD / TrueOS上调整ZFS存储池的大小

在Vultr上升级VPS实例时,将自动调整Linux文件系统的大小。当使用高级ZFS文件系统运行FreeBSD时,需要一些手动工作。本指南假定我们的帐户刚刚升级为包括更多存储空间,并逐步完成了调整ZFS卷大小的步骤。在这个例子中,我们假设安装了以ZFS作为根文件系统的FreeBSD或TrueOS。本教程应适用于类似的操作系统,例如FreeNAS。

首先,我们将了解硬盘驱动器的大小和布局。从这里开始,我们将假设我们的硬盘驱动器是设备“ vtbd0”,这是FreeBSD安装中的第一个硬盘驱动器。为了发现vtbd0的大小和布局,我们使用以下gpart命令。

gpart show

我们将看到一行指示驱动器的大小及其状态。在调整驱动器大小之后,我们在第一行末尾看到的状态为“损坏”。此状态行之后,将有三行告诉我们驱动器上有哪些分区,正在使用哪些文件系统以及每个分区的大小。第一个分区可能是“ BIOS引导”分区,第二个分区是我们的ZFS卷,第三个分区通常是交换空间。在本示例中,我们将采用这种布局。每个分区分配有一个索引号。在这种情况下,BIOS引导分区的索引号为“ 1”,ZFS卷的索引号为“ 2”,而对于交换的索引号为“ 3”。您的布局和索引号可能会有所不同。

我们需要做的下一件事是恢复驱动器的布局,以使其不再显示为“损坏”。运行以下命令:

gpart recover vtbd0

我们应该立即看到一条消息,指出“ vtbd0已恢复”。gpart show再次运行,仔细检查驱动器状态。下一步是处理交换分区。如果交换分区位于驱动器上的ZFS池之后,则可能会妨碍ZFS容量的增长。我们将离线进行交换,并通过运行以下命令删除交换分区:

swapoff -a
gpart delete -i 3 vtbd0

这些命令关闭交换空间并删除分区“ 3”(交换分区)。确保在运行gpart show之前先运行,gpart delete以确保要删除正确的分区。

下一步是调整ZFS分区的大小。我们可以在这里采用两种方法之一。如果我们决定根本不需要交换空间,那么可以通过运行以下命令来接管驱动器上的所有可用空间,并将其分配给ZFS分区:

gpart resize -i 2 vtbd0

另外,如果我们想继续使用交换空间,那么我们可以稍微修改一下resize命令。让我们假设ZFS分区当前为10GB,我们希望将其大小调整为20GB。我们将执行:

gpart resize -i 2 -s 20g vtbd0

“ -s 20g”参数告诉g​​part将第二个分区的大小调整为20GB。我们可以通过运行确认此操作已成功完成gpart show。该gpart show命令还将向我们显示驱动器末端有多少空间可用于新的交换分区。

此时,检查ZFS存储池的大小仍将显示先前的大小。

zpool list

要告诉文件系统扩展并接管驱动器的整个第二分区,请执行以下操作:

zpool online -e tank vtbd0p2

上面的命令调整了名为“ tank”的ZFS存储池的大小,并接管了硬盘驱动器的整个第二分区。该行末尾的“ p2”表示我们正在使用第二个分区,如果驱动器的布局不同,则“ p”后的数字将需要与ZFS分区索引匹配。请记住,您可以使用显示分区索引gpart show

至此,我们快完成了。如果不需要交换空间,则说明安装完成。运行zpool list以确认存储池是正确的,更大的大小。

否则,您在驱动器的末尾留有空间用于交换分区。我们可以通过运行一些命令来重新添加交换空间。首先,我们创建一个新的交换空间:

gpart add -t freebsd-swap -s 1g -i 3 vtbd0

此命令创建一个大小为1GB的交换分区。新的分区将添加到我们的硬盘驱动器中,并赋予索引号“ 3”。我们的下一步是启用交换空间,以便我们的操作系统可以使用新分区。

swapon /dev/vtbd0p3

再次,在行尾的“ p3”表示我们的交换分区已分配给索引“ 3”。如果我们使用了不同的索引,则应更改该数字以在生成的输出中反映掉交换索引号gpart show。我们可以通过运行以下命令来确认交换空间已启用并可以正常工作:

swapctl -l -h

这将显示正在使用1GB的交换空间。

最后,请注意。删除/重新添加交换空间会更改交换分区的标签。这意味着文件中的交换条目/etc/fstab将不再被视为有效。因此,在操作系统重新引导后将不会启用交换空间。为避免此问题,请打开/etc/fstab文件并找到安装交换空间的行。确保该行的开头列出了我们刚刚创建的分区/dev/vtbd0p3,作为交换设备。


Tags: #BSD

Leave a Comment

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息

大數據的13個商業數據提取工具

大數據的13個商業數據提取工具

大數據的13個商業數據提取工具

什麼是日誌文件系統,它是如何工作的?

什麼是日誌文件系統,它是如何工作的?

我們的計算機以稱為日誌文件系統的有組織的方式存儲所有數據。這是一種有效的方法,可以讓計算機在您點擊搜索時立即搜索和顯示文件。 https://wethegeek.com/?p=94116&preview=true

技術奇點:人類文明的遙遠未來?

技術奇點:人類文明的遙遠未來?

隨著科學的快速發展,接管了我們的大量工作,我們陷入無法解釋的奇點的風險也在增加。閱讀,奇點對我們意味著什麼。

洞察 26 種大數據分析技術:第 1 部分

洞察 26 種大數據分析技術:第 1 部分

洞察 26 種大數據分析技術:第 1 部分

2021 年人工智能對醫療保健的影響

2021 年人工智能對醫療保健的影響

過去幾十年,醫療保健領域的人工智能取得了巨大飛躍。因此,醫療保健中人工智能的未來仍在日益增長。