posted by Andrew Schulman on Wed 13th Apr 2005 19:46 UTC

"EVMS, Page 3/3"
Uh Oh

If there's a drawback to all of that power, it's that it can lead to overconfidence. During my testing of EVMS, I got to be pretty bold about moving live file systems around. Then, during the third time I tried it, as a move operation was about 75% complete, I fired up a heavyweight email client. Bad news: first the client started to show me corrupted mail folders, and then my entire system locked up hard. Even the magic SysRq didn't work, so the kernel was in a very bad state. I had to press the reset button. The move operation hadn't completed, and I thought my home partition was toast. But to my surprise, when I rebooted from my rescue disk (remember I said you had to have one of those?) and ran fsck, everything was fine; the volume was clean and in its original location. I reran the move operation (this time with the volume unmounted), rebooted, and to my great relief, found that all of my data was intact. Later, I read in the manual that this behavior is by design. (I live on the edge, so you don't have to.)

So I got away with it that time, but the old lesson was reinforced: back up your data before you start rearranging disk volumes. I know, every partition manager tells you this, and after a while you start to ignore it. But even with a high-quality product such as EVMS—not to mention a certain popular graphical partition manager, which once trashed my boot partition while moving it, and it wasn't even mounted—the risk of data destruction is non-negligible. And moreover, just because EVMS allows you to do something cool, doesn't mean you should do it. It's still safer to dismount your volumes before moving them.

Breaking Old Habits

If you're like me, you've spent many hours over the years repartitioning disks the hard way: moving your data to some free space, verifying the copy, repartitioning, creating a new file system, moving the data back, and verifying the copy again. It's slow work, and every time you get a new disk or your space requirements change (/home filled up again?), you have to do it again. How much space do you need for /home this time? And do you really need separate partitions for each of /boot, /usr, /usr/local, /var, /tmp, /opt, and /home, as I've seen recommended? Good grief. Partition like that, and you'll be back in a week changing it all around again.

Logical volume management, of the kind provided by LVM or EVMS, is the tool to free us from this drudgery. It lets us take a high-level view of our storage, and forget about the details. If /home is nearly full and you need to take some space from /var, don't repartition; just tell EVMS to reallocate the space. Or if you've added a new disk, you don't have to move all of /home onto the new disk in order to give it room to grow; just tell EVMS to append some of the new empty space onto /home. /home may end up spread over a collection of disk segments on several disks, but you don't have to care because the device mapper presents them to you as a single logically contiguous disk extent. And if you really want the fine-grained control that you get by creating all of those partitions, then at least the weekly chore of reallocating the space will be easier.

There are cases where you'll want to specify which physical disk drive a volume should live on. You may want to keep your root file system on your fastest drive, for example, or move all the data off of a drive before removing it from your host. EVMS allows you to do all of these things; you have complete control. You can build a volume on top of an LVM region for greater flexibility, or keep it on a particular disk segment for greater control.

Documentation and Support

EVMS comes with a manual, an architecture overview, and step-by-step guides to installing the software and converting your existing partitions into EVMS volumes. The documentation is well written and illustrated, clear, and generally complete. The manual seemed a bit sparse to me at first, but I usually found that the information I needed was there; I just needed to go back and read it again.

The text and graphical interfaces both offer help text in action dialogs, but it doesn't work in the text interface, and in most cases I found the help to be generic and not especially useful anyway. For example, when I was creating a new disk segment using the GPT segment manager, EVMS asked me if I wanted the new segment to be a "System Partition." I didn't know what that meant, the manual didn't say, and the help text just told me that this was a dialog where I could choose options. Not very helpful, but fortunately not crucial to me in that case.

The EVMS developers monitor the EVMS mailing list, and are highly responsive to questions and bug reports posted there.

Overall Quality and Usability

EVMS is open source software, hosted on Sourceforge. But this is not someone's weekend hobby. It's professional quality software. In two weeks of heavy use I found it to be stable and free of all but minor bugs. This is especially important in such a sensitive application, where a bug can cause catastrophic loss of data.

Development of EVMS is funded by IBM, which has a team of developers fixing bugs, developing new features, and answering queries on the EVMS mailing list. This level of professional development effort is apparent in the multiple parallel interfaces, good documentation, and elegant back-end design, which probably in itself accounts for some of the application's stability.

The GUI is pleasant to use, with a clean look and logical layout. As I mentioned before, the parallel layout of the text and graphical interfaces helps in learning to use both.

If I could see the GUI improved in one area, it would be in helping the user to visualize all of the complicated relations between the many storage objects at different levels: disks, segments, containers, regions, drive links, and RAID arrays. If you want to find out about a particular storage object, the GUI will show you which other objects it's built from, but this is only a small part of the whole picture. What would really be useful is for the GUI to automatically create complete object diagrams like the sample diagram above.


After working heavily with EVMS for a couple of weeks, I've concluded that it rocks. Its capabilities are comprehensive, and its design, interface, documentation, and support are of high quality. EVMS may be designed for enterprise use, but home power users will not want to miss out on its capabilities. Once you get over the hurdles of installing and learning to use it, EVMS will probably be the only disk management software you'll ever need.

About the author:
Andrew E. Schulman is a statistician and programmer at the U.S. Environmental Protection Agency in Washington, DC. The opinions expressed in this article are those of the author, and not necessarily those of the Agency.

If you would like to see your thoughts or experiences with technology published, please consider writing an article for OSNews.
Table of contents
  1. "EVMS, Page 1/3"
  2. "EVMS, Page 2/3"
  3. "EVMS, Page 3/3"
e p (0)    11 Comment(s)

Technology White Papers

See More