更新升级 专属应用 系统故障 硬件故障 电脑汽车 鸿蒙刷机 鸿蒙开发Linux教程 鸿蒙开发Linux命令
当前位置:HMXT之家 > 鸿蒙开发Linux教程 > 在Rocky Linux 8/AlmaLinux 8上安装和配置Stratis

在Rocky Linux 8/AlmaLinux 8上安装和配置Stratis

更新时间:2023-01-18 10:58:40浏览次数:174+次

本文介绍如何在Rocky Linux 8/AlmaLinux 8系统上安装和配置Stratis的方法。Stratis是一种本地存储管理服务,它可以方便地从物理存储设备管理池,它简化了复杂存储配置的设置和管理,并允许访问高级功能。

具体的安装和配置Stratis方法

1、在Rocky Linux 8/AlmaLinux 8上安装Stratis

Stratis提供以下两个包:

stratisd daemon:负责创建和管理块设备以及提供DBUS API的守护程序。

stratis-cli:stratis的命令行工具

现在使用以下命令在Rocky Linux 8/AlmaLinux 8上安装Stratis:

sudo dnf install stratisd stratis-cli

安装后,启动并启用Stratis服务:

sudo systemctl enable --now stratisd

检查服务状态:

$ systemctl status stratisd

2、创建Stratis池

如前所述,可以使用一个或多个块设备创建池。首先,识别磁盘:

$ lsblk

\

这里有5个辅助磁盘sdb、sdc、sdd、sde和sdf,每个磁盘的容量为10GB。

您需要使用具有以下语法的命令从所有块设备中擦除任何文件系统、分区表或RAID签名:

sudoo wipefs --all block-device1 block-device2

例如:

sudo wipefs --all /dev/sdX

根据您的偏好,您可以使用以下方法之一创建Stratis池:

A、使用单块设备创建地层池

要从一个块设备创建Stratis池,请使用具有以下语法的命令:

sudo stratis pool create <pool-name> <block-device>

将pool-name替换为所需的池名称,将block-device替换为磁盘。例如:

stratis pool create pool_1 /dev/sdX

创建后,使用以下命令进行验证:

$ sudo stratis pool list

pool_1   10 GiB / 37.63 MiB / 9.96 GiB      ~Ca,~Cr   538cb5f5-c0a3-487e-aafa-8a21d589e11f

B、使用多个区块设备创建地层池

要使用多个块设备创建池,请使用具有以下语法的命令:

stratis pool create <pool_name> device-1 device-2 device-n

例如,使用sdc、sdd、sde创建另一个池:

sudo stratis pool create pool_2 /dev/sdc /dev/sdd /dev/sde

创建后,列出池:

$ sudo stratis pool list

\

从上面的输出中,您可以同意池的总大小等于单个块设备大小的总和。

C、创建加密的Stratis池

以上所有方法都用于创建未加密的Stratis池。但是,如果您需要创建一个加密的Stratis池来保护您的数据,则必须执行以下操作:

首先,获取用于加密的密钥集:

$ sudo stratis key set --capture-key key-description

Enter key data followed by the return key: Enter Key and press Enter

现在使用密钥,使用语法为的命令创建加密的Stratis池:

sudo stratis pool create --key-desc key-description my-pool block-device

这里,key-description引用了上面创建的内核密钥环。例如:

sudo stratis pool create --key-desc key-description pool_3  /dev/sdf

您仍然可以使用多个块设备创建加密池:

sudo stratis pool create --key-desc key-description my-pool block-device-1 block-device-2

验证创建:

$ sudo stratis pool list

\

3、在池中创建文件系统

创建池后,您可以继续在其上创建文件系统。这可以通过使用以下语法执行命令来实现:

sudo stratis fs create <poolname> <filesystemname>

例如:

sudo stratis fs create pool_1 filesystem-1

sudo stratis fs create pool_2 filesystem-2

sudo stratis fs create pool_3 filesystem-3

查看创建的文件系统,可用以下命令:

$ sudo stratis fs list

您还可以查看单个池上的文件系统:

sudo stratis fs list <poolname>

例如:

$ sudo stratis fs list pool_1

对于详细视图,可以使用以下命令:

lsblk

样本输出:

\

您将注意到加密池中磁盘的一些差异。他们使用cryptsetup库进行加密。

4、安装Stratis文件系统

为了使用池,您需要装载文件系统。创建装载点并装载文件系统,如下所示:

对于第一个池:

sudo mkdir /mnt/pool_1

sudo mount /dev/stratis/pool_1/filesystem-1 /mnt/pool_1

第二个池:

sudo mkdir /mnt/pool_2

sudo mount /dev/stratis/pool_2/filesystem-2 /mnt/pool_2

对于第三个池:

sudo mkdir /mnt/pool_3

sudo mount /dev/stratis/pool_3/filesystem-3 /mnt/pool_3

为了使文件系统在重新启动后仍然存在,您需要将它们添加到Fstab文件中。确定文件系统的UUID:

$ sudo lsblk --output=UUID /dev/stratis/pool_1/filesystem-1

UUID

b9b05db4-99a0-4036-ad5f-96de3f8a9c0a

$ sudo lsblk --output=UUID /dev/stratis/pool_2/filesystem-2

UUID

77970ccc-2298-49ce-bfd0-adb7218c2418

$ sudo lsblk --output=UUID /dev/stratis/pool_3/filesystem-3

UUID

f3b6276b-7daf-4756-ad8c-991a58cf0e20

现在使用获得的UUID将文件系统添加到fstab文件中:

$ sudo vi /etc/fstab

UUID=b9b05db4-99a0-4036-ad5f-96de3f8a9c0a /mnt/pool_1 xfs defaults,x-systemd.requires=stratisd.service 0 0

UUID=77970ccc-2298-49ce-bfd0-adb7218c2418 /mnt/pool_2 xfs defaults,x-systemd.requires=stratisd.service 0 0

UUID=f3b6276b-7daf-4756-ad8c-991a58cf0e20 /mnt/pool_3 xfs defaults,x-systemd.requires=stratisd.service 0 0

完成上述更改后,重新加载守护程序:

sudo systemctl daemon-reload

重新启动后,加密池将不可用。您需要解锁它才能看到它。

5、创建Stratis快照

快照在给定时间创建文件系统的精简配置副本。这可以使用以下命令在Stratis上创建:

sudo stratis fs snapshot <poolname> <fsname> <snapshotname>

例如:

stratis fs snapshot pool_2 filesystem-2 mysnapshot

列出可用快照:

$ sudo stratis filesystem list pool_2

6、恢复到Stratis快照

创建快照后,可以使用以下步骤恢复快照:

首先,卸载原始文件系统:

sudo umount /dev/stratis/pool_2/filesystem-2

然后将快照复制到文件系统:

sudo stratis filesystem snapshot pool_2 mysnapshot block

现在装载快照:

sudo mount /dev/stratis/my-pool/my-fs mount-point

例如:

sudo mount /dev/stratis/pool_2/filesystem-2 /mnt/pool_2

7、删除Stratis文件系统

要删除文件系统,首先需要卸载它。例如:

sudo umount /mnt/pool_3

然后销毁文件系统:

sudo stratis filesystem destroy <poolname> <filesystem-name>

例如:

sudo stratis filesystem destroy pool_3 filesystem-3

验证这一点:

$ sudo stratis filesystem list pool_3

Pool Name   Name   Used   Created   Device   UUID

池中不应有文件系统。

8、移除Stratis池

删除文件系统后,可以使用以下语法的命令删除池:

sudo stratis pool destroy <poolname>

例如:

stratis pool destroy pool_3

使用以下命令进行验证:

$ sudo stratis pool list

\

9、向现有Stratis池添加磁盘

可以使用以下命令将磁盘添加到现有池:

sudo stratis pool add-data <poolname> /<devicepath>

但请记住,池中的块设备需要全部加密或全部未加密。

擦除磁盘上的分区:

sudo wipefs --all block-device

继续并添加块设备。例如:

sudo stratis pool add-data pool_1 /dev/sdf

验证这一点:

\

到这里,在Rocky Linux 8/AlmaLinux 8系统上安装和配置Stratis的内容讲完了。