在 Ubuntu 19.10 上入門 ZFS 文件系統

Ubuntu 19.10 的主要新特性之一就是 ZFS。如今你能夠很容易的無需額外努力就能夠在 Ubuntu 系統上安裝 ZFS了。linux

通常狀況下,安裝 Linux 都會選擇 Ext4 文件系統。可是若是是全新安裝 Ubuntu 19.10,在安裝的啓動階段能夠看到 ZFS 選項。git

你能夠在安裝 Ubuntu 19.10 的時候選擇 ZFS

讓咱們看看 ZFS 爲什麼重要,以及如何在已經安裝了 ZFS 的 Ubuntu 上使用它。github

ZFS 與其餘文件系統有哪些區別?

ZFS 的設計初衷是:處理海量存儲和避免數據損壞。ZFS 能夠處理 256 千萬億的 ZB 數據。(這就是 ZFS 的 Z)且它能夠處理最大 16 EB 的文件。ubuntu

若是你僅有一個單磁盤的筆記本電腦,你能夠體驗 ZFS 的數據保護特性。寫時複製(COW)特性確保正在使用的數據不會被覆蓋,相反,新的數據會被寫到一個新的塊中,同時文件系統的元數據會被更新到新塊中。ZFS 可容易的建立文件系統的快照。這個快照可追蹤文件系統的更改,並共享數據塊確保節省數據空間。安全

ZFS 爲磁盤上的每一個文件分配一個校驗和。它會不斷的校驗文件的狀態和校驗和。若是發現文件被損壞了,它就會嘗試修復文件。bash

我寫過一個文章詳細介紹 什麼是 ZFS以及它有哪些特性。若是你感興趣能夠去閱讀下。工具

注:請謹記 ZFS 的數據保護特性會致使性能降低。性能

Ubuntu 下使用 ZFS [適用於中高級用戶]

一旦你在你的主磁盤上全新安裝了帶有 ZFS 的 Ubuntu,你就能夠開始體驗它的特性。this

請注意全部的 ZFS 設置過程都須要命令行。我不知道它有任何 GUI 工具。spa

建立一個 ZFS 池

這段僅針對擁有多個磁盤的系統。若是你只有一個磁盤,Ubuntu 會在安裝的時候自動建立池。

在建立池以前,你須要爲池找到磁盤的 id。你能夠用命令 lsblk 查詢出這個信息。

爲三個磁盤建立一個基礎池,用如下命令:

sudo zpool create pool-test /dev/sdb /dev/sdc /dev/sdd
複製代碼

請記得替換 pool-test 爲你選擇的的命名。

這個命令將會設置「無冗餘 RAID-0 池」。這意味着若是一個磁盤被破壞或有故障,你將會丟失數據。若是你執行以上命令,仍是建議作一個常規備份。

你能夠用下面命令將另外一個磁盤增長到池中:

sudo zpool add pool-name /dev/sdx
複製代碼

查看 ZFS 池的狀態

你能夠用這個命令查詢新建池的狀態:

sudo zpool status pool-test
複製代碼

Zpool 狀態

鏡像一個 ZFS 池

爲確保數據的安全性,你能夠建立鏡像。鏡像意味着每一個磁盤包含一樣的數據。使用鏡像設置,你可能會丟失三個磁盤中的兩個,而且仍然擁有全部信息。

要建立鏡像你能夠用下面命令:

sudo zpool create pool-test mirror /dev/sdb /dev/sdc /dev/sdd
複製代碼

建立 ZFS 用於備份恢復的快照

快照容許你建立一個後備,以防某個文件被刪除或被覆蓋。好比,咱們建立一個快照,當在用戶主目錄下刪除一些目錄後,而後把它恢復。

首先,你須要找到你想要的快照數據集。你能夠這樣作:

zfs list
複製代碼

Zfs List

你能夠看到個人家目錄位於 rpool/USERDATA/johnblood_uwcjk7

咱們用下面命令建立一個名叫 1910 的快照:

sudo zfs snapshot rpool/USERDATA/johnblood_uwcjk7@1019
複製代碼

快照很快建立完成。如今你能夠刪除 DownloadsDocuments 目錄。

如今你用如下命令恢復快照:

sudo zfs rollback rpool/USERDATA/johnblood_uwcjk7@1019
複製代碼

回滾的時間長短取決於有多少信息改變。如今你能夠查看家目錄,被刪除的目錄(和它的內容)將會被恢復過來。

要不要試試 ZFS ?

這篇文章僅簡單介紹的 Ubuntu下 ZFS 的用法。更多的信息請參考 Ubuntu 的 ZFS Wiki頁面。我也推薦閱讀 ArsTechnica 的精彩文章

這個是試驗性的功能。若是你還不瞭解 ZFS,你想用一個簡單穩定的系統,請安裝標準文件系統 EXT4。若是你想用閒置的機器體驗,能夠參照上面瞭解 ZFS。若是你是一個「專家」,而且知道本身在作什麼,則能夠隨時隨地隨意嘗試ZFS。

你以前用過 ZFS 嗎?請在下面留言。


via: itsfoss.com/zfs-ubuntu/

做者:John Paul 選題:lujun9972 譯者:guevaraya 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出

know in the comments below. If you found this article interesting, please take a minute to share it on social media, Hacker News or Reddit.


via: itsfoss.com/zfs-ubuntu/

做者:John Paul 選題:lujun9972 譯者:譯者ID 校對:校對者ID

本文由 LCTT 原創編譯,Linux中國 榮譽推出

相關文章
相關標籤/搜索