如本系列的第1部分和第2 部分中所讨论的,Stratis是一个卷管理文件系统,其功能类似于ZFS和Btrfs 。 在本文中,我们将逐步介绍如何在命令行上使用Stratis。
越来越分层
对于非开发人员来说,现在尝试Stratis的最简单方法是在Fedora 28中 。
运行此命令后,可以使用以下命令安装Stratis守护程序和Stratis命令行工具:
# dnf install stratis-cli stratisd
创建一个池
Stratis具有三个概念: blockdevs , pools和filesystem 。 Blockdev是组成池的块设备,例如磁盘或磁盘分区。 创建池后,可以从中创建文件系统。
假设您的系统上当前没有使用或挂载一个名为vdg
的块设备,则可以使用以下命令在其上创建Stratis池:
# stratis pool create mypool /dev/vdg
假设vdg
已完全清零并且为空。 如果未使用它,但是上面有旧数据,则可能有必要使用pool create
的- force
选项。 如果正在使用它,请不要将其用于Stratis。
如果要从一个以上的块设备创建池,只需在pool create
命令行中将它们全部列出即可。 您还可以稍后使用blockdev add-data
命令添加更多的blockdev。 请注意,Stratis要求blockdev的大小至少为1 GiB。
创建文件系统
一旦创建了一个名为mypool
的池,就可以从中创建文件系统:
# stratis fs create mypool myfs1
在通过池mypool
创建了名为myfs1
的文件系统后,可以使用Stratis在/ dev / stratis中创建的条目来挂载和使用它:
# mkdir myfs1
# mount /dev/stratis/mypool/myfs1 myfs1
现在,文件系统已挂载在myfs1
并可以使用。
快照
除了创建空文件系统之外,还可以创建文件系统作为现有文件系统的快照:
# stratis fs snapshot mypool myfs1 myfs1-experiment
之后,您可以挂载新的myfs1-experiment
,该文件最初将包含与myfs1
相同的文件内容,但可能会随着文件系统的修改而改变。 您对myfs1-experiment
所做的任何更改都不会反映在myfs1
除非您通过以下方式卸载myfs1
并将其销毁:
# umount myfs1
# stratis fs destroy mypool myfs1
然后快照快照以重新创建并重新挂载它:
# stratis fs snapshot mypool myfs1-experiment myfs1
# mount /dev/stratis/mypool/myfs1 myfs1
获取资讯
Stratis可以列出系统上的池:
# stratis pool list
随着文件系统写入了更多数据,您将看到“ Total Physical Used”值增加。 当接近“总物理尺寸”时要小心; 我们仍在努力正确处理此问题。
列出池中的文件系统:
# stratis fs list mypool
列出组成一个池的blockdev:
# stratis blockdev list mypool
这些目前仅提供最少的信息,但将来会提供更多信息。
破坏游泳池
了解Stratis的功能后,要销毁该池,请首先确保已卸载并销毁由此创建的所有文件系统,然后使用pool destroy
命令:
# umount myfs1
# umount myfs1-experiment (if you created it)
# stratis fs destroy mypool myfs1
# stratis fs destroy mypool myfs1-experiment
# stratis pool destroy mypool
stratis pool list
现在不应显示任何池。
而已! 有关更多信息,请参见联机帮助页: man stratis
。
翻译自: https://opensource.com/article/18/5/stratis-storage-linux-command-line