All right.
So for this lab, we need an empty 20-gig disk.
LSBLK should show us that we have an empty 20-gig disk
with the name NVMe0N2.
And there, we need to create a status pool.
Before we can do that, DNF search status.
And there, we can see all the different status utilities.
And I'm going to use DNF install status CLI.
That should automatically take care of the status D
and the status D tools.
And let's check.
And oh, we see status D, but we don't see status D tools.
Well, no worries.
Now, we are going to install status D tools separately
once this is done.
Right, so what are we going to do next?
Well, as I told you, we need status D tools.
And then, we need to make sure that the status service is
running.
So system CTL enable minus minus now status D. Next,
it is asking to create a pool with a size of 10 gigs.
Now, the problem is that the pool
takes an entire block device.
And I have a hard disk.
And the hard disk has a size of 20 gigs.
So I don't have a choice but to partition the hard disk.
So I'm going to dev n3me0 n2 using P to verify
that this is my empty disk.
And let's not do that.
Let's use G first to give it a GPT disk label.
And now, use N to create two partitions
with a size of 10 gigabytes.
Well, one with a size of 10 gigabytes
and another one with a size of almost 10 gigabytes.
And then, I'm using W to write.
And now, I can use status pool.
And status pool has different commands.
Minus minus help is showing all the commands.
In case you are thinking, hey, what was it again?
Minus minus help will help you.
So I want to create a pool.
So status pool create.
And we call it status pool.
And we put in dev n3me0 n2 P1.
And then, we need two file systems.
So what are we going to do here?
Well, my files and my programs, we need to create them.
And how do we do that again?
We use status fs create in status pool, my files,
as well as my programs.
And then, I'm using status fs list
for a list of the file systems.
And here, we can see the thin provisioned file systems.
Now, we need to mount them persistently.
And in order to mount them persistently,
we need the UUIDs.
That is pretty important.
Status is mounted by UUIDs.
And the best way to get the UUIDs
is by using status fs list, because traditional utilities
don't work well if you are in a status environment.
Let me first create the mount points for my files,
as well as my programs.
And then, let's use status fs, fs list, org print $NF.
And there, we have the UUIDs.
And I guess if we do a tail minus 2
and send that to etc fs step, that
should be the easiest way to get them in.
So the first one is my files.
As long as I do that consequently,
we should be OK.
So etc fs step.
And there we go again, mounting it on slash my files,
mounting it as XFS, because that's the default in status.
The default mount options are 0 and 0.
And here, we are mounting it on my programs, XFS and defaults
and 0 and 0.
And that should be doing it.
Is that so?
One little thing to be changed, and that is UUID equals,
because otherwise, fs step has no clue of what is going on.
So UUID equals, and there we go.
And this should be OK.
Now, is this really OK?
Honestly, no, because we have a dependency.
And the dependency is to the StratisD service.
And that means that we cannot just put in the default mount
options.
But we need to change that to X system D dot requires
is StratisD dot service.
And the same right here, X system D dot requires
is StratisD dot service.
And now, we should be OK.
And before I'm going to do anything else,
I'm going to reboot this system, because this
is one of these critical moments where something
might have gone wrong.
And you want to make sure that the changes survive a reboot.
Don't forget to press Escape while it is booting
if you want to see what is going on.
And I do see some fuse mounts creating an error.
But apart from that, I don't see any errors.
I see the login prompt again.
So this is looking all right.
Now, we were not done yet.
We need to create a snapshot as well.
And in order to do so, we copy all files from ETC.
So CP, ETC, and all files start with an A, C, or F.
And that is what we copy to slash myfiles.
Ignore the minus R, not specified.
We don't need subdirectories.
And next, we need to create a snapshot.
So Stratis FS snapshot from Stratis pool, myfiles.
And let's call it myfiles snap.
And now, I'm using Stratis FS list.
And there, we can see that myfiles snap has been created.
And I'm going to use RM on myfiles A star to remove all files.
Oh, let's make that an RM minus F to remove all files that have a name that
is starting with an A. And then, we need to verify that we can still access
And then, we need to verify that we can still access these files from the snapshot.
So how am I going to do that?
Well, by using mount on dev Stratis, Stratis pool, myfiles-snap, on slash MNT.
And when I'm checking in MNT, we can see that the A files still exist.
And that's all we needed to do for this lab.
So we're done.