在 Ubuntu 19.10 上入门 ZFS 文件系统
创始人
2024-03-02 03:58:35
0

Ubuntu 19.10 的主要新特性之一就是 ZFS。现在你可以很容易的无需额外努力就可以在 Ubuntu 系统上安装 ZFS了。

一般情况下,安装 Linux 都会选择 Ext4 文件系统。但是如果是全新安装 Ubuntu 19.10,在安装的启动阶段可以看到 ZFS 选项。

你可以在安装 Ubuntu 19.10 的时候选择 ZFS

让我们看看 ZFS 为何重要,以及如何在已经安装了 ZFS 的 Ubuntu 上使用它。

ZFS 与其他文件系统有哪些区别?

ZFS 的设计初衷是:处理海量存储和避免数据损坏。ZFS 可以处理 256 千万亿的 ZB 数据。(这就是 ZFS 的 Z)且它可以处理最大 16 EB 的文件。

如果你仅有一个单磁盘的笔记本电脑,你可以体验 ZFS 的数据保护特性。写时复制(COW)特性确保正在使用的数据不会被覆盖,相反,新的数据会被写到一个新的块中,同时文件系统的元数据会被更新到新块中。ZFS 可容易的创建文件系统的快照。这个快照可追踪文件系统的更改,并共享数据块确保节省数据空间。

ZFS 为磁盘上的每个文件分配一个校验和。它会不断的校验文件的状态和校验和。如果发现文件被损坏了,它就会尝试修复文件。

我写过一个文章详细介绍 什么是 ZFS以及它有哪些特性。如果你感兴趣可以去阅读下。

注:请谨记 ZFS 的数据保护特性会导致性能下降。

Ubuntu 下使用 ZFS [适用于中高级用户]

一旦你在你的主磁盘上全新安装了带有 ZFS 的 Ubuntu,你就可以开始体验它的特性。

请注意所有的 ZFS 设置过程都需要命令行。我不知道它有任何 GUI 工具。

创建一个 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: https://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: https://itsfoss.com/zfs-ubuntu/

作者:John Paul 选题:lujun9972 译者:译者ID 校对:校对者ID

本文由 LCTT 原创编译,Linux中国 荣誉推出

ZFS

相关内容

AWS OpenZFS文件...
当使用AWS OpenZFS文件系统挂载连接时,遇到连接卡住(超时...
2024-11-17 11:31:47
硬核观察 #1124 Un...
Unity 新的按安装次数定价激怒了游戏开发社区多年来,Unity...
2024-03-02 17:18:17
在 Linux 上使用 y...
在 Fedora 上使用 yum 仓库来获取最新的 ZFS 特性。...
2024-03-02 05:59:01
Manjaro 20 Ly...
Manjaro Linux 刷新了其 Manjaro 20 “Ly...
2024-03-02 04:52:50
在 Ubuntu 19.1...
Ubuntu 19.10 的主要新特性之一就是 ZFS。现在你可以...
2024-03-02 03:58:35
初学者指南:ZFS 是什么...
今天,我们来谈论一下 ZFS,一个先进的文件系统。我们将讨论 ZF...
2024-03-02 00:18:42

热门资讯

Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
使用 KRAWL 扫描 Kub... 用 KRAWL 脚本来识别 Kubernetes Pod 和容器中的错误。当你使用 Kubernet...
JStock:Linux 上不... 如果你在股票市场做投资,那么你可能非常清楚投资组合管理计划有多重要。管理投资组合的目标是依据你能承受...
Epic 游戏商店现在可在 S... 现在可以在 Steam Deck 上运行 Epic 游戏商店了,几乎无懈可击! 但是,它是非官方的。...
《Apex 英雄》正式可在 S... 《Apex 英雄》现已通过 Steam Deck 验证,这使其成为支持 Linux 的顶级多人游戏之...
从 Yum 更新中排除特定/某... 作为系统更新的一部分,你也许需要在基于 Red Hat 系统中由于应用依赖排除一些软件包。如果是,如...
通过 SaltStack 管理... 我在搜索Puppet的替代品时,偶然间碰到了Salt。我喜欢puppet,但是我又爱上Salt了:)...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
Opera 浏览器内置的 VP... 昨天我们报道过 Opera 浏览器内置了 VPN 服务,用户打开它可以防止他们的在线活动被窥视。不过...
如何检查你的 Linux 系统... 不知道在使用哪个初始化系统?以下是方法。每个主流 Linux 发行版(包括 Ubuntu、Fedor...