如何在Ubuntu Linux 17.04上安装ZFS
ZFS文件系统已在Ubuntu 16.04中得到正式支持,并且更早的我们已经展示了如何在centos 7上安装。
尽管默认情况下未安装并启用它,但它在Ubuntu的存储库中可用。
ZFZ是最初由Sun Microsystems for Solaris创建的高级文件系统和逻辑卷管理器。
该文件系统是为大型服务器设计的,旨在提供防止数据丢失的保护。
每个文件都经过校验和,以确保它没有被损坏。
它也可以管理数据的ZB,因此命名为“ Z”。
ZFS还允许我们将多个驱动器合并到一个池中,以创建没有特殊硬件的软件RAID。
其他功能包括压缩,卷管理,快照,缓存等等。
在本文中,我们将在Ubuntu 17.04上安装ZFS,并学习如何使用其功能。
安装ZFS
要在Ubuntu 17.04上安装ZFS,请输入以下命令。
# apt install zfsutils
ZFS术语
ZFS虚拟设备(VDEV):虚拟设备是物理磁盘,分区,镜像或者ZFS软件雨淋设备的集合。
ZFS池:Zpool是由一组VDEV组成的存储。
我们可以组合多个磁盘,镜像来创建池。
用法
以下是使用ZFS创建池和进行配置的步骤。
在这些示例中,“ pool-1”表示要使用或者修改的池的名称。
创建或者修改ZFS池
RAID-0配置
在此示例中,从tw0个物理驱动器创建了一个名为pool-1的池。
# zpool create pool-1 /dev/sda5 /dev/sda3
或者我们可以使用以下命令创建镜像池。
# zpool create pool-1 mirror /dev/sd5 /dev/sd3
RAID-1配置
# zpool create pool-1 /dev/sda /dev/sdb
将另一个磁盘添加到池中
# zpool add pool-1 /dev/sda5 /dev/sda2
添加镜像选项可将VDEV添加到镜像中。
# zpool add pool-1 mirror /dev/sda5 /dev/sda2
我们可以通过在指定卷之前添加相应的名称来创建各种类型的RAIDS(如raidz,raidz2,raidz3和嵌套raid)。
基于单个文件的池
我们可以将文件作为vdev并放入一个池中。
# zpool create pool-test /home/user/pool-1.img
检查池状态
# zpool status
如果我们创建了一个名为'pool-1'的池,则可以在/pool-1 /下访问它
销毁池
# zpool destroy pool-1
检查池的大小和使用情况
# zpool list
# df
ZFS快照
ZFS快照是ZFS文件系统的只读副本,可保存文件系统的当前状态,并且可以在以后的时间回滚到该快照。
# zfs snapshot pool-1@snap1
我们可以通过键入以下内容查看快照:
# zfs list -t snapshot
要回滚到特定快照:
# zfs rollback mypool/projects@snap1
我们可以通过输入以下命令删除快照
# zfs destroy mypool/projects@snap1
如果尝试列出快照,则会收到消息“没有可用的数据集”。
ZFS克隆
克隆是ZFS快照的可写副本。
只能从快照创建克隆,并且在交付所有克隆之前不能删除快照。
要克隆池,请先拍摄快照,然后再克隆它。
在此示例中,我们将克隆pool-1 @ snap1并将其克隆到pool-1/clone中。
# zfs snapshot -r pool-1@snap1 # zfs clone pool-1@snap1 pool-1/clone
清理池
我们可以使用scrub选项在池上启动数据完整性检查。
例如,要擦洗“ pool-1”:
# zpool scrub pool-1
查看池的I/O统计信息
# zpool iostat
ZFS看起来非常有趣,并且可以让我们使用RAID来处理多个文件系统。