ZFS 是文件系統和邏輯捲管理器的組合,可提供類似 RAID 的功能和數據完整性以及簡化的存儲管理。您可以存儲和管理大量數據。它最初由 Sun Microsystems 創建,現在是 OpenZFS 項目的一部分。它目前正在移植到其他操作系統,例如 FreeBSD、Linux 和 MacOSX。 ZFS 存儲池可以處理大量數據,為擴展本地雲提供解決方案。
本文介紹如何安裝 ZFS 並設置 ZFS 存儲池。但是,在繼續之前,讓我們先看看它的功能。
ZFS 功能
ZFS 的一些特性包括:
- 池化存儲
- 開源
- 寫時復制
- 加密
- 快照
- 持續一致性檢查
- 高效的數據壓縮
- 數據完整性驗證和自動修復
我們將使用 Ubuntu 18.04 LTS 來說明本文中描述的過程。
在 Ubuntu 上安裝 ZFS
按在 Ubuntu 18.04 LTS 上安裝 ZFS Ctrl + Alt + T 然後輸入以下命令:
$ sudo apt install zfsutils-linux
等待一段時間,直到安裝完成。
要驗證安裝,請在終端中運行以下命令:
$ whereis zfs
您應該會看到類似於以下內容的輸出:
創建 ZFS 存儲池
安裝後,創建一個驅動器池。 創建 ZFS 存儲池的第一步是了解您正在創建的池的類型。接下來,決定要將哪些驅動器放入存儲池。
1.選擇ZFS池類型
您可以創建兩種類型的池:
條紋池
條帶池存儲所有驅動器上的數據副本。獲得集成存儲和更快的讀/寫速度。但是,如果一個驅動器發生故障,所有數據都將丟失。
鏡像池
鏡像池在所有驅動器上存儲數據的完整副本。 即使一個驅動器發生故障,也可以訪問數據。
2.選擇要池化的驅動器
接下來,您需要確定您的系統可以使用哪些驅動器進行池化。要查找驅動器,請在終端中運行以下命令:
$ sudo fdisk –l
記下 fdisk 命令輸出中的驅動器名稱。驅動器看起來像 sda、sdb、sdc。
在這種情況下,有兩個驅動器可用,sdb 和 sdc。使用這兩個驅動器創建一個存儲池。
3.創建一個池
在決定了哪種類型的池和哪些驅動器需要被池化之後,下一步是使用 Linux 上可用的 zpool 命令從上述驅動器集中池化,該命令用於使用 ZFS 配置存儲池。
要創建條帶池,請在終端中運行以下命令:
$ sudo zpool create <pool_name> <drive1> <drive2>
要創建鏡像池,請在終端中運行以下命令:
$ sudo zpool <pool_name> mirror <drive1> <drive2>
您可以根據存儲要求創建任何池。使用上述命令創建鏡像池。
創建池後,您可以使用以下命令檢查 zpool 的詳細狀態:
# zpool status
要查看池狀態和空間使用情況,請在終端中使用以下命令:此命令還顯示存儲池的選定磁盤。您可以稍後添加驅動器以進一步增加冗餘。
$ zpool list
現在跑步 df -h可以看到新創建的池在掛載點自動掛載了。
我創建的池大小為 1.9G,並安裝在默認安裝點 / 新池如果需要,您可以使用以下語法更改掛載點:
$ sudo zfs set mountpoint=<path> <pool_name>
例如, /usr/共享/池 作為新的掛載點。為此,請使用以下命令:
$ sudo zfs set mountpoint=/usr/share/pool new-pool
驗證掛載點是否已成功更改 df -h 命令
從上面的結果可以看出掛載點已經成功更改為新的掛載點。 /usr/共享/池..
現在已經創建了存儲池,創建數據集並將所有內容存儲在這些數據集中。這些數據集就像目錄,帶有掛載點。
要創建數據集,請在終端中運行以下命令:
$ sudo zfs create <pool_name>/directory_name
例如,我想創建一個名為 文件 在我的存儲池下。使用以下命令。
$ sudo zfs create new-pool/docs
您創建的數據集會自動掛載名稱 / 新池 / 文檔 在掛載點 /usr/共享/池 可以使用 df -h 命令。
$ df -h
刪除 ZFS 池
如果要刪除池,可以使用 zpool destroy 命令,如下:
# zpool destroy pool_name
這就是在 Ubuntu 18.04 LTS 上設置 ZFS 存儲池所需的全部內容。現在您可以開始將文件保存到新創建的池中。這是一個強大而強大的文件系統,您可以在處理大量存儲時使用它。