Messages in this thread | | | Subject | Re: Logical Volume Manager | From | Miguel de Icaza <> | Date | 30 Sep 1997 12:26:24 -0500 |
| |
Heinz said:
> Because logical volumes (LVs) can be resized at runtime i need a filesystem > (FS) feature which enables ext2 to be extended/reduced while its mounted too. > This could be an extension to tunefs or a separate FS administration tool.
I have written a patch for Linux 2.1.39 that modifies the ext2 file system to allow it to span multiple devices. At system operation time you can add devices to an ext2 file system (and remove devices from a file system, but I have not finished that bit :-) and the file system will resize accordingly. This does not really resize the file system, instead, the file system code has been taught how to deal with a file system that spans multiple disks.
If you are interested in looking at the patches and the tools that implement this, check: http://www.nuclecu.unam.mx/~miguel/ext2-volume
One of the problems of the code I have is that I have not written support for fsck nor ext2lib for dealing with these modified file systems. This needs to be done, but I am not sure if I should spend more time on this pursuing this goal.
This may not be quite what you have in mind, as I think the purpose of your logical volume is that you will hide the details of where the disk blocks are actually located on the disk to the upper layers, am I correct? I have the impression that this logical volume that you implemented is a glamorous version of the MD linear personality?
> It should work like this: > ------------------------- > AFTER extending a LV the contained filesystem should be linear > extentable (superblocks etc.) beyond the old FS limit. > > BEFORE reduction of the LV the FS should be shrinkable (moving user data > and reducing metadata) from its actual end to the new LV size.
This sure can be done by ext2 if you do not need to do these tasks at runtime. If you want to grow and shrink an ext2 file system at runtime, that can prove to be far from a trivial hack.
In that regard, probably the easier to implement and less disturbing approach would be to use an approach similar to my patch. But in that case, I am not sure it makes much sense to use the logical volume approach.
If people like the idea (specially, the ext2 maintainers), I could add the missing bits to the multi-device ext2 patchs (like having the code be an optional compilation feature and the shrink-fs option, which is pretty easy to do).
Best wishes, Miguel.
| |