[rhn-users] lvm2 does not activate a volume group at boot time

Tom Combs combs at fsu.edu
Thu Apr 21 19:59:48 UTC 2011


On 04/21/2011 03:15 PM, Jonathan Smith wrote:
> On 04/21/2011 11:10 AM, Rogelio Bazan wrote:
>> hi All,
>>
>> I have rhel4.7 with lvm2 lvm2-2.02.42-9.el4.
>>
>> At boot time, when trying to mount the file systems, it can't find the
>> devices/lv's which are on a different volume group.
>>
>> I have 2 VG's one for the OS file systems vgroot and other for
>> Applications File systems vgapps.
>>
>> Those lv's which are on vgapps, cannot be mounted because the vgapps is
>> not being activated at boot time.
>>
>> Once OS is up, i can do vgchange -ay vgapps and mount -a.
>
> Check/rebuild your initrd.
>
>     smithj
>
> _______________________________________________
> rhn-users mailing list
> rhn-users at redhat.com
> https://www.redhat.com/mailman/listinfo/rhn-users


Yeah, sounds like your initrd is broken. I've had somewhat similar
problems on RHEL4. For guidance, I've included a procedure I've
used for fixing another issue with the initrd. Note that this is
a different problem then what you are having but the steps for
getting in a fixing the initrd will be similar, you just need to
fix a different part. Hopefully this will be enough to point you
in the right direction.

Problem
========
On xxx, once after upgrading the kernel and once after
installing vmwaretools, the initrd gets broken. On booting,
this error is generated:

   Checking root filesystem [FAILED]
   /dev/VolGroup00/LogVol00 is mounted. e2fsck : cannot
   continue, aborting.

   *** An error occurred during the file system check
   *** Dropping you to a shell; blah, blah, blah

The problem is that the init file in the initrd image mounts
/root in read,write and then tries to e2fsck /root. This
can't be done on a mounted file system, thus the error. This
has only happened on xxx and is most likely an issue
with RHEL 4.


Solution
========
Boot the system using an older kernel (hit return on the boot
screen before booting occurs, select older kernel, hit return).
If you don't have an older kernel, you'll have to boot off of
CD and go into rescue mode and the go to were the disk is mounted,
/mnt/sysimg (?)

When the system is up, fix the broken initrd image with the
following. Note that the kernel levels used are for example
and will probably differe from what you have.

1) mkdir /tmp/initrd

2) cd /tmp/initrd

3) gzip -dc /boot/initrd-2.6.9-89.0.18.ELsmp.img | cpio -id

4) vi init
    change
       mount -o rw,acl --ro -t ext3 /dev/root /sysroot
    to
        mount -o defaults --ro -t ext3 /dev/root /sysroot
    save changes

5) mv /boot/initrd-2.6.9-89.0.18.ELsmp.img \
         /boot/initrd-2.6.9-89.0.18.ELsmp.img.orig

6) find ./ | cpio -H newc -o > /boot/initrd-new.img

7) gzip /boot/initrd-new.img

8) cd /boot

9) mv -v initrd-new.img.gz initrd-2.6.9-89.0.18.ELsmp.img
    (over write = yes)

10) reboot using the 2.6.9-89.0.18 kernel with the fixed
     initrd.



-- 
Tom Combs
Systems Administrator
Information Technology Services
Florida State University
(850) 645-8026
combs at fsu.edu




More information about the rhn-users mailing list