a quick summary of what it takes to get LVM2 up and running under the 2.6 kernel. NOTE: i'll keep this simple and assume that you're not currently running LVM already, so i can skip dealing with having to create an initrd for backward compatibility and so on. and there will be some points that i'm still not clear on, so feel free to chime in. before you start, download two packages from ftp://ftp.sistina.com/pub/LVM2: device-mapper LVM2 tools and just put these aside for later. step 1 ------ first, start with the 2.6.0-test1-ac2 kernel source. AFAICT, this latest source has the patches for LVM2 already incorporated, so you don't need to mess with source patching. do "make xconfig" and select: Multi-device support (RAID and LVM) Device manager support ioctl interface version 4 build, install, mkinitrd, etc... you know the drill. reboot. (if you don't see these options, you almost certainly don't have the latest 2.6.0-test1-ac2 source.) step 2 ------ next, build and install the libdevmapper libs required by the LVM2 tools. unload the device-mapper tar ball and, given that you're already running under 2.6.0-test1-ac2, the following should just work: # ./configure # make # make install this should install /lib/libdevmapper.so, which you'll need for building the LVM2 tools. step 3 ------ building the actual lvm utilities, which is the trickiest part of all of this. unload the LVM2.2.00.05.tgz tarball and apply the following short patch: =========================================================== --- lib/device/dev-io.c 2003-07-18 17:01:02.769138390 -0400 +++ lib/device/dev-io.c.dist 2003-07-18 17:00:46.853139386 -0400 @@ -22,6 +22,9 @@ # undef WNOHANG /* Avoid redefinition */ # undef WUNTRACED /* Avoid redefinition */ # include <linux/fs.h> /* For block ioctl definitions */ +#ifndef BLKGETSIZE64 +#define BLKGETSIZE64 _IOR(0x12,114,sizeof(u64)) +#endif # define BLKSIZE_SHIFT SECTOR_SHIFT #else # include <sys/disk.h> =========================================================== apparently, this is to get around some differences between the 2.6.0-test1-ac2 header files and the installed header files in RH 9. regardless, just apply the patch. based on your situation, you can configure with a small set of options. i chose: $ ./configure --with-lvm1=none --enable-readline you can read the INSTALL file to see what's right for you. then: $ make installing the utilities ------------------------ before you finally run "make install", you should first remove the current lvm RPM, since the names of the newer utilities are the same as the old ones. in fact, what will be installed in /sbin will be a single executable "lvm", and a zillion symlinks to it representing all the LVM utilities. given that the current lvm RPM has at least one dependent package (mkinitrd in my case), all i did was: # rpm -e --nodeps lvm # make install at this point, i would think you're good to go. i haven't tested this yet (need to clean up some disk space first), but if anyone wants to take a crack at it, feel free. have i missed anything? rday -- Shrike-list mailing list Shrike-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/shrike-list