使用 Stratis 从命令行管理 Linux 存储

通过从命令行运行这个易于使用的 Linux 存储工具,充分利用它。
236 位读者喜欢这个。
How to find files in Linux

Lewis Cowles, CC BY-SA 4.0

正如本系列第 1 部分第 2 部分中所讨论的那样,Stratis 是一个卷管理文件系统,其功能类似于 ZFSBtrfs。在本文中,我们将逐步介绍如何在命令行上使用 Stratis。

获取 Stratis

对于非开发人员来说,现在尝试 Stratis 最简单的方法是在 Fedora 28 中。

一旦你运行了它,你可以使用以下命令安装 Stratis 守护进程和 Stratis 命令行工具

# dnf install stratis-cli stratisd

创建池

Stratis 有三个概念:块设备(blockdevs)池(pools)文件系统(filesystems)。块设备是组成池的块设备,例如磁盘或磁盘分区。一旦创建了池,就可以从中创建文件系统。

假设你的系统上有一个名为 vdg 的块设备,当前未使用或未挂载,你可以使用以下命令在其上创建一个 Stratis 池

# stratis pool create mypool /dev/vdg

这假设 vdg 是完全清零且为空的。如果它未使用但上面有旧数据,则可能需要使用 pool create- force 选项。如果它正在使用中,请不要将其用于 Stratis。

如果你想从多个块设备创建一个池,只需在 pool create 命令行中列出它们即可。你也可以稍后使用 blockdev add-data 命令添加更多块设备。请注意,Stratis 要求块设备的大小至少为 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 并使用以下命令销毁它,否则你对 myfs1-experiment 所做的任何更改都不会反映在 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

随着更多数据写入文件系统,你将看到“物理总使用量”值增加。当它接近“物理总大小”时要小心;我们仍在努力正确处理这个问题。

要列出池中的文件系统

# stratis fs list mypool

要列出组成池的块设备

# 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

标签
Andy Grover
Andy Grover 是 Red Hat 的首席软件工程师,致力于改进 Linux 的块存储功能。他的工作涵盖了内核本身以及低级管理工具的更改。之前的工作领域包括网络和 ACPI。他住在波特兰。

评论已关闭。

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 许可。
© . All rights reserved.