510 lines
9.3 KiB
HTML
510 lines
9.3 KiB
HTML
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||
|
<HTML
|
||
|
><HEAD
|
||
|
><TITLE
|
||
|
>Upgrading to LVM 1.0.8 with an LVM root partition and initrd</TITLE
|
||
|
><META
|
||
|
NAME="GENERATOR"
|
||
|
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
|
||
|
REL="HOME"
|
||
|
TITLE="LVM HOWTO"
|
||
|
HREF="index.html"><LINK
|
||
|
REL="UP"
|
||
|
TITLE="Transitioning from previous versions of LVM to LVM 1.0.8"
|
||
|
HREF="trans1.html"><LINK
|
||
|
REL="PREVIOUS"
|
||
|
TITLE="Upgrading to LVM 1.0.8 with a non-LVM root partition"
|
||
|
HREF="upgradelvm1.html"><LINK
|
||
|
REL="NEXT"
|
||
|
TITLE="Common Tasks"
|
||
|
HREF="commontask.html"></HEAD
|
||
|
><BODY
|
||
|
CLASS="sect1"
|
||
|
BGCOLOR="#FFFFFF"
|
||
|
TEXT="#000000"
|
||
|
LINK="#0000FF"
|
||
|
VLINK="#840084"
|
||
|
ALINK="#0000FF"
|
||
|
><DIV
|
||
|
CLASS="NAVHEADER"
|
||
|
><TABLE
|
||
|
SUMMARY="Header navigation table"
|
||
|
WIDTH="100%"
|
||
|
BORDER="0"
|
||
|
CELLPADDING="0"
|
||
|
CELLSPACING="0"
|
||
|
><TR
|
||
|
><TH
|
||
|
COLSPAN="3"
|
||
|
ALIGN="center"
|
||
|
>LVM HOWTO</TH
|
||
|
></TR
|
||
|
><TR
|
||
|
><TD
|
||
|
WIDTH="10%"
|
||
|
ALIGN="left"
|
||
|
VALIGN="bottom"
|
||
|
><A
|
||
|
HREF="upgradelvm1.html"
|
||
|
ACCESSKEY="P"
|
||
|
>Prev</A
|
||
|
></TD
|
||
|
><TD
|
||
|
WIDTH="80%"
|
||
|
ALIGN="center"
|
||
|
VALIGN="bottom"
|
||
|
>Chapter 10. Transitioning from previous versions of LVM to LVM 1.0.8</TD
|
||
|
><TD
|
||
|
WIDTH="10%"
|
||
|
ALIGN="right"
|
||
|
VALIGN="bottom"
|
||
|
><A
|
||
|
HREF="commontask.html"
|
||
|
ACCESSKEY="N"
|
||
|
>Next</A
|
||
|
></TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
><HR
|
||
|
ALIGN="LEFT"
|
||
|
WIDTH="100%"></DIV
|
||
|
><DIV
|
||
|
CLASS="sect1"
|
||
|
><H1
|
||
|
CLASS="sect1"
|
||
|
><A
|
||
|
NAME="upgradetolvmroot"
|
||
|
></A
|
||
|
>10.2. Upgrading to LVM 1.0.8 with an LVM root partition and initrd</H1
|
||
|
><P
|
||
|
> This is relatively straightforward if you follow the steps
|
||
|
carefully. It is recommended you have a good backup and a suitable
|
||
|
rescue disk handy just in case.
|
||
|
</P
|
||
|
><P
|
||
|
> The <SPAN
|
||
|
CLASS="QUOTE"
|
||
|
>"normal"</SPAN
|
||
|
> way of running an LVM root file system is
|
||
|
to have a single non-LVM partition called
|
||
|
<TT
|
||
|
CLASS="filename"
|
||
|
>/boot</TT
|
||
|
>
|
||
|
which contains the kernel and initial RAM disk needed to start the
|
||
|
system. The system I upgraded was as follows:
|
||
|
<TABLE
|
||
|
BORDER="0"
|
||
|
BGCOLOR="#E0E0E0"
|
||
|
WIDTH="100%"
|
||
|
><TR
|
||
|
><TD
|
||
|
><FONT
|
||
|
COLOR="#000000"
|
||
|
><PRE
|
||
|
CLASS="screen"
|
||
|
> <B
|
||
|
CLASS="command"
|
||
|
> # df</B
|
||
|
>
|
||
|
<TT
|
||
|
CLASS="computeroutput"
|
||
|
> Filesystem 1k-blocks Used Available Use% Mounted on
|
||
|
/dev/rootvg/root 253871 93384 147380 39% /
|
||
|
/dev/hda1 17534 12944 3685 78% /boot
|
||
|
/dev/rootvg/home 4128448 4568 3914168 0% /home
|
||
|
/dev/rootvg/usr 1032088 332716 646944 34% /usr
|
||
|
/dev/rootvg/var 253871 31760 209004 13% /var
|
||
|
</TT
|
||
|
>
|
||
|
</PRE
|
||
|
></FONT
|
||
|
></TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
>
|
||
|
<TT
|
||
|
CLASS="filename"
|
||
|
>/boot</TT
|
||
|
>
|
||
|
contains the old kernel and an initial RAM disk as well as the LILO
|
||
|
boot files and the following entry in
|
||
|
<TT
|
||
|
CLASS="filename"
|
||
|
>/etc/lilo.conf</TT
|
||
|
>
|
||
|
<TABLE
|
||
|
BORDER="0"
|
||
|
BGCOLOR="#E0E0E0"
|
||
|
WIDTH="100%"
|
||
|
><TR
|
||
|
><TD
|
||
|
><FONT
|
||
|
COLOR="#000000"
|
||
|
><PRE
|
||
|
CLASS="screen"
|
||
|
> <B
|
||
|
CLASS="command"
|
||
|
> # ls /boot</B
|
||
|
>
|
||
|
<TT
|
||
|
CLASS="computeroutput"
|
||
|
> System.map lost+found vmlinux-2.2.16lvm
|
||
|
map module-info boot.0300
|
||
|
boot.b os2_d.b chain.b
|
||
|
initrd.gz
|
||
|
</TT
|
||
|
>
|
||
|
<B
|
||
|
CLASS="command"
|
||
|
> # tail /etc/lilo.conf</B
|
||
|
>
|
||
|
<TT
|
||
|
CLASS="computeroutput"
|
||
|
> image=/boot/vmlinux-2.2.16lvm
|
||
|
label=lvm08
|
||
|
read-only
|
||
|
root=/dev/rootvg/root
|
||
|
initrd=/boot/initrd.gz
|
||
|
append="ramdisk_size=8192"
|
||
|
</TT
|
||
|
>
|
||
|
</PRE
|
||
|
></FONT
|
||
|
></TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
>
|
||
|
|
||
|
<P
|
||
|
></P
|
||
|
><OL
|
||
|
TYPE="1"
|
||
|
><LI
|
||
|
><P
|
||
|
> <STRONG
|
||
|
> Build LVM kernel and modules
|
||
|
</STRONG
|
||
|
>
|
||
|
</P
|
||
|
><P
|
||
|
> Follow the steps outlined in
|
||
|
<A
|
||
|
HREF="getlvm.html"
|
||
|
>Chapter 5</A
|
||
|
> - <A
|
||
|
HREF="buildlvmmod.html"
|
||
|
>Section 6.2</A
|
||
|
>
|
||
|
for instructions on how to get and build the necessary
|
||
|
kernel components of LVM.
|
||
|
</P
|
||
|
></LI
|
||
|
><LI
|
||
|
><P
|
||
|
> <STRONG
|
||
|
> Build the LVM user tools
|
||
|
</STRONG
|
||
|
>
|
||
|
</P
|
||
|
><P
|
||
|
> Follow the steps in
|
||
|
<A
|
||
|
HREF="buildlvmmod.html"
|
||
|
>Section 6.2</A
|
||
|
> to build and install the user
|
||
|
tools for LVM.
|
||
|
</P
|
||
|
><P
|
||
|
> Install the new tools. Once you have done this you cannot
|
||
|
do any LVM manipulation as they are not compatible with
|
||
|
the kernel you are currently running.
|
||
|
</P
|
||
|
></LI
|
||
|
><LI
|
||
|
><P
|
||
|
> <STRONG
|
||
|
> Rename the existing initrd.gz
|
||
|
</STRONG
|
||
|
>
|
||
|
</P
|
||
|
><P
|
||
|
> This is so it doesn't get overwritten by the new one
|
||
|
<TABLE
|
||
|
BORDER="0"
|
||
|
BGCOLOR="#E0E0E0"
|
||
|
WIDTH="100%"
|
||
|
><TR
|
||
|
><TD
|
||
|
><FONT
|
||
|
COLOR="#000000"
|
||
|
><PRE
|
||
|
CLASS="screen"
|
||
|
> <B
|
||
|
CLASS="command"
|
||
|
># mv /boot/initrd.gz /boot/initrd08.gz</B
|
||
|
>
|
||
|
</PRE
|
||
|
></FONT
|
||
|
></TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
>
|
||
|
</P
|
||
|
></LI
|
||
|
><LI
|
||
|
><P
|
||
|
> <STRONG
|
||
|
> Edit <TT
|
||
|
CLASS="filename"
|
||
|
>/etc/lilo.conf</TT
|
||
|
>
|
||
|
</STRONG
|
||
|
>
|
||
|
</P
|
||
|
><P
|
||
|
> Make the existing boot entry point to the renamed file.
|
||
|
You will need to reboot using this if something goes wrong
|
||
|
in the next reboot. The changed entry will look something
|
||
|
like this:
|
||
|
<TABLE
|
||
|
BORDER="0"
|
||
|
BGCOLOR="#E0E0E0"
|
||
|
WIDTH="100%"
|
||
|
><TR
|
||
|
><TD
|
||
|
><FONT
|
||
|
COLOR="#000000"
|
||
|
><PRE
|
||
|
CLASS="screen"
|
||
|
> image=/boot/vmlinux-2.2.16lvm
|
||
|
label=lvm08
|
||
|
read-only
|
||
|
root=/dev/rootvg/root
|
||
|
initrd=/boot/initrd08.gz
|
||
|
append="ramdisk_size=8192"
|
||
|
</PRE
|
||
|
></FONT
|
||
|
></TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
>
|
||
|
</P
|
||
|
></LI
|
||
|
><LI
|
||
|
><P
|
||
|
> <STRONG
|
||
|
> Run lvmcreate_initrd to create a new initial RAM disk
|
||
|
</STRONG
|
||
|
>
|
||
|
<TABLE
|
||
|
BORDER="0"
|
||
|
BGCOLOR="#E0E0E0"
|
||
|
WIDTH="100%"
|
||
|
><TR
|
||
|
><TD
|
||
|
><FONT
|
||
|
COLOR="#000000"
|
||
|
><PRE
|
||
|
CLASS="screen"
|
||
|
> <B
|
||
|
CLASS="command"
|
||
|
># lvmcreate_initrd 2.4.9</B
|
||
|
>
|
||
|
</PRE
|
||
|
></FONT
|
||
|
></TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
>
|
||
|
Don't forget the put the new kernel version in there so
|
||
|
that it picks up the correct modules.
|
||
|
</P
|
||
|
></LI
|
||
|
><LI
|
||
|
><P
|
||
|
> <STRONG
|
||
|
> Add a new entry into /etc/lilo.conf
|
||
|
</STRONG
|
||
|
>
|
||
|
</P
|
||
|
><P
|
||
|
> This new entry is to boot the new kernel with its new
|
||
|
initrd.
|
||
|
<TABLE
|
||
|
BORDER="0"
|
||
|
BGCOLOR="#E0E0E0"
|
||
|
WIDTH="100%"
|
||
|
><TR
|
||
|
><TD
|
||
|
><FONT
|
||
|
COLOR="#000000"
|
||
|
><PRE
|
||
|
CLASS="screen"
|
||
|
> image=/boot/vmlinux-2.4.9lvm
|
||
|
label=lvm10
|
||
|
read-only
|
||
|
root=/dev/rootvg/root
|
||
|
initrd=/boot/initrd.gz
|
||
|
append="ramdisk_size=8192"
|
||
|
</PRE
|
||
|
></FONT
|
||
|
></TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
>
|
||
|
</P
|
||
|
></LI
|
||
|
><LI
|
||
|
><P
|
||
|
> <STRONG
|
||
|
> Re-run lilo
|
||
|
</STRONG
|
||
|
>
|
||
|
</P
|
||
|
><P
|
||
|
> This will install the new boot block
|
||
|
<TABLE
|
||
|
BORDER="0"
|
||
|
BGCOLOR="#E0E0E0"
|
||
|
WIDTH="100%"
|
||
|
><TR
|
||
|
><TD
|
||
|
><FONT
|
||
|
COLOR="#000000"
|
||
|
><PRE
|
||
|
CLASS="screen"
|
||
|
> <B
|
||
|
CLASS="command"
|
||
|
># /sbin/lilo</B
|
||
|
>
|
||
|
</PRE
|
||
|
></FONT
|
||
|
></TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
>
|
||
|
</P
|
||
|
></LI
|
||
|
><LI
|
||
|
><P
|
||
|
> <STRONG
|
||
|
> Reboot
|
||
|
</STRONG
|
||
|
>
|
||
|
</P
|
||
|
><P
|
||
|
> When you get the LILO prompt select the new entry name (in
|
||
|
this example lvm10) and your system should boot into Linux
|
||
|
using the new LVM version.
|
||
|
</P
|
||
|
><P
|
||
|
> If the new kernel does not boot, then simply boot the old
|
||
|
one and try to fix the problem. It may be that the new
|
||
|
kernel does not have all the correct device drivers built
|
||
|
into it, or that they are not available in the initrd.
|
||
|
Remember that all device drivers (apart from LVM) needed
|
||
|
to access the root device should be compiled into the
|
||
|
kernel and not as modules.
|
||
|
</P
|
||
|
><P
|
||
|
> If you need to do any LVM manipulation when booted back
|
||
|
into the old version, then simply recompile the old tools
|
||
|
and install them with
|
||
|
<TABLE
|
||
|
BORDER="0"
|
||
|
BGCOLOR="#E0E0E0"
|
||
|
WIDTH="100%"
|
||
|
><TR
|
||
|
><TD
|
||
|
><FONT
|
||
|
COLOR="#000000"
|
||
|
><PRE
|
||
|
CLASS="screen"
|
||
|
> <B
|
||
|
CLASS="command"
|
||
|
># make install</B
|
||
|
>
|
||
|
</PRE
|
||
|
></FONT
|
||
|
></TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
>
|
||
|
If you do this, don't forget to install the new tools when
|
||
|
you reboot into the new LVM version.
|
||
|
</P
|
||
|
></LI
|
||
|
></OL
|
||
|
>
|
||
|
|
||
|
When you are happy with the new system remember to change the
|
||
|
``default='' entry in your lilo.conf file so that it is the default
|
||
|
kernel.
|
||
|
</P
|
||
|
></DIV
|
||
|
><DIV
|
||
|
CLASS="NAVFOOTER"
|
||
|
><HR
|
||
|
ALIGN="LEFT"
|
||
|
WIDTH="100%"><TABLE
|
||
|
SUMMARY="Footer navigation table"
|
||
|
WIDTH="100%"
|
||
|
BORDER="0"
|
||
|
CELLPADDING="0"
|
||
|
CELLSPACING="0"
|
||
|
><TR
|
||
|
><TD
|
||
|
WIDTH="33%"
|
||
|
ALIGN="left"
|
||
|
VALIGN="top"
|
||
|
><A
|
||
|
HREF="upgradelvm1.html"
|
||
|
ACCESSKEY="P"
|
||
|
>Prev</A
|
||
|
></TD
|
||
|
><TD
|
||
|
WIDTH="34%"
|
||
|
ALIGN="center"
|
||
|
VALIGN="top"
|
||
|
><A
|
||
|
HREF="index.html"
|
||
|
ACCESSKEY="H"
|
||
|
>Home</A
|
||
|
></TD
|
||
|
><TD
|
||
|
WIDTH="33%"
|
||
|
ALIGN="right"
|
||
|
VALIGN="top"
|
||
|
><A
|
||
|
HREF="commontask.html"
|
||
|
ACCESSKEY="N"
|
||
|
>Next</A
|
||
|
></TD
|
||
|
></TR
|
||
|
><TR
|
||
|
><TD
|
||
|
WIDTH="33%"
|
||
|
ALIGN="left"
|
||
|
VALIGN="top"
|
||
|
>Upgrading to LVM 1.0.8 with a non-LVM root partition</TD
|
||
|
><TD
|
||
|
WIDTH="34%"
|
||
|
ALIGN="center"
|
||
|
VALIGN="top"
|
||
|
><A
|
||
|
HREF="trans1.html"
|
||
|
ACCESSKEY="U"
|
||
|
>Up</A
|
||
|
></TD
|
||
|
><TD
|
||
|
WIDTH="33%"
|
||
|
ALIGN="right"
|
||
|
VALIGN="top"
|
||
|
>Common Tasks</TD
|
||
|
></TR
|
||
|
></TABLE
|
||
|
></DIV
|
||
|
></BODY
|
||
|
></HTML
|
||
|
>
|