I rebooted my system, and during boot-up it complains about not being
able to fsck the root volume. The boot-up stops and it drops to a root
shell prompt. What happened to my root volume?
A.
To get your system back to a normal state, run the following commands from
the root shell prompt:
mount -o remount,rw /
/sbin/evms_activate
Then reboot your system once more and it should boot normally.
The reason for this behavior is due to the order in which Device-Mapper
devices are activated. DM assigns device-numbers dynamically as devices
are activated. If you made a change to your volume configuration, it's
possible that it changed the order in which EVMS discovers and activates
all the DM devices. However, the device nodes in /dev/evms/ represent the
device-number assignments from the previous boot. Since evms_activate
usually doesn't run until after the root-filesystem is remounted
read-write, the device node for your root volume may have the wrong
device-number. Thus the error when it tries to fsck the root volume.
One of the best solutions to this problem is to use udev to manage
your /dev directory, and to mount a tmpfs on /dev. With this type
of setup, you can actually have your boot scripts run evms_activate
before the root filesystem is fsck'ed and remounted read-write. This
ensures that the /dev/evms/ directory is correctly up-to-date with
the current DM device-number assignments before the root volume needs
to be fsck'ed.
Software RAID
Q.
I have a RAID-5 region, and My system was running fine but got shut
down uncleanly. Now EVMS says my RAID-5 is corrupted and no longer activates
it. How do I recover my region?
A.
Answer coming soon.
Q.
I have a RAID-0 or RAID-5 volume with a JFS or XFS filesystem. I would
like to expand my RAID volume by adding another disk. EVMS says the RAID
volume must be inactive in order to expand, but it also says that JFS and
XFS must be mounted in order to expand. How can I expand my RAID volume?
A.
This is definitely an unfortunate catch-22. Luckily there's a pretty
simple workaround. All you need to do is fool EVMS into thinking there
isn't an XFS or JFS filesystem on your RAID-0 or RAID-5 volume just during
the time that you want to expand it. To do this, move the appropriate plugin
library (XFS and/or JFS) out of /lib/evms/x.y.z/ to some temporary location.
Then run the EVMS UI, and since the XFS/JFS plugin isn't loaded, it won't
detect the filesystem. Then you'll be able to expand the RAID volume. After
the RAID expand is complete, you'll just need to manually expand the XFS or
JFS filesystem (after mounting it). For XFS, use the xfs_growfs command. For
JFS, you simply remount the filesystem using the command
mount -o
remount,resize /mnt/point. After this, you can move the XFS/JFS plugins
back to the /lib/evms/x.y.z/ directory.
Snapshots
Q.
I've taken a snapshot of my XFS file system. If the original volume
is unmounted, I can mount the snapshot without any problem. However, if
I try to mount the snapshot while the original is mounted, I get the
following error:
mount: wrong fs type, bad option, bad superblock on
/dev/evms/Snapshot or too many mounted file systems.
A.
XFS does internal checking to prevent one file system being mounted
multiple times. Because the snapshot looks exactly like the original, XFS
assumes you're trying to mount the same file system twice. You can prevent
this behavior by using the "nouuid" option to the
mount
command.
mount -o nouuid /dev/evms/Snapshot /mnt/Snapshot
Other Plug-ins
Q.
I get the following message when I start any of the EVMS user interfaces:
Engine: The plugin Ext2/3 in module /lib/evms/libe2fsim.1.2.1.so
requires the Engine services API version (8.1.0), which is less than this
Engine's services API version (12.0.0).
Engine: The plugin failed to load.
A.
The e2fsprogs package includes its own plug-in for EVMS. However,
this plug-in is not up-to-date with the latest EVMS internal interfaces.
Because the EVMS package comes with its own version of the Ext2/3 plug-in,
the plug-in that comes with e2fsprogs (/lib/evms/libe2sfsim.1.2.1.so)
can simply be deleted.