如何在FreeBSD服务器上添加并配置ZFS池
时间:2019-11-20 08:53:39 来源:igfitidea点击:
ZFS是FreeBSD操作系统的文件系统。
它是最初由Sun Microsystems设计的文件系统和逻辑卷管理器。
如何在FreeBSD服务器上配置加密的ZFS池?
如何在FreeBSD 11服务器上添加加密的ZFS池?
如何在FreeBSD上查看现有的硬盘
执行下面的命令之一:
# camcontrol devlist
或者
# geom disk list
输出示例:
Geom name: vtbd0 Geom name: vtbd1 Geom name: vtbd2
查看当前分区
运行以下命令:
# gpart show
查看当前的zpool
执行以下命令:
# zfs list # zpool list # zpool status
输出示例:
pool: zroot state: ONLINE scan: none requested config: NAME STATE READ WRITE CKSUM zroot ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 vtbd0p3. eli ONLINE 0 0 0 vtbd1p3. eli ONLINE 0 0 0
可以看到/dev/vtbd0和/dev/vtbd1 组成了镜像池zroot。
我们可以使用/dev/vtbd2来创建另外一个池。
如何在FreeBSD上配置加密的ZFS池
执行gpart命令在vtbd2创建新的分区方案
# gpart create -s gpt vtbd2 `vtbd2 created`
根据分区方案,创建新的分区
# gpart add -t freebsd-zfs -l disk2-vol0 vtbd2 `vtbd2p1 added`
其中
-t freebsd-zfs
:将分区的类型设置为freebsd-zfs,即包含ZFS卷的FreeBSD分区。-l disk2-vol0
:将分区标签名称设置为disk2-vol0,即/dev/gpt/disk2-vol0vtbd2
:设备名称
在FreeBSD中如何使用Geli为ZFS文件系统启用加密
geli只是为使用GEOM磁盘框架的FreeBSD编写的块设备层磁盘加密系统。
aesni驱动程序用于Intel CPU上的AES加速器,以加速磁盘加密。
首先将以下行添加到/boot/loader.conf中
# echo 'aesni_load="YES"' >> /boot/loader.conf
使用kldload命令加载FreeBSD aesni驱动程序:
# kldload aesni
为/dev/gpt/disk2-vol0设置加密:
# geli init -l 256 /dev/gpt/disk2-vol0
在连接加密的设备时,需要使用上面指定的密码。
geli命令的选项说明:
init
:geli实用程序用于在GEOM提供程序上配置加密。初始化名为/dev/gpt/disk2-vol0的提供程序,该提供程序需要加密。-l 256
:默认和推荐的算法是AES-XTS,并将数据密钥长度设置为256以与给定的加密算法一起使用。/dev/gpt/disk2-vol0
:设备名称
创建GEOM设备/dev/gpt/disk2-vol0.eli
# geli attach /dev/gpt/disk2-vol0 # ls -l /dev/gpt/disk2-vol0*
查看GEOM设备的状态
# geli status
输出示例:
Name Status Components vtbd0p3.eli ACTIVE vtbd0p3 vtbd1p3.eli ACTIVE vtbd1p3 mirror/swap.eli ACTIVE mirror/swap gpt/disk2-vol0.eli ACTIVE gpt/disk2-vol0
我们将使用/dev/gpt/disk2-vol0.eli创建zfs池。
创建zfs池
使用zpool命令创建ZFS池:
# zpool create backup /dev/gpt/disk2-vol0.eli
验证一下:
# zpool list # zpool status # zfs list backup
系统重启后如何挂载设备
需要执行以下命令:
# geli attach /dev/gpt/disk2-vol0 # zfs mount -a # zfs get mounted backup # zpool list # zpool status ## use it again ## # cd /backup # ls -l
如何在FreeBSD上添加两个磁盘并配置加密的ZFS池镜像块存储
假设还有/dev/vtbd2和/dev/vtbd3:
# gpart create -s gpt vtbd2 # gpart create -s gpt vtbd3 # gpart add -t freebsd-zfs -l disk2-vol0 vtbd2 # gpart add -t freebsd-zfs -l disk3-vol0 vtbd3 # geli init -l 256 /dev/gpt/disk2-vol0 # geli init -l 256 /dev/gpt/disk3-vol0 # geli attach /dev/gpt/disk2-vol0 # geli attach /dev/gpt/disk3-vol0 # geli status # zpool create backupdisk mirror gpt/disk2-vol0.eli gpt/disk3-vol0.eli # zpool list # zpool status