Summary: | sys-fs/lvm-user (LVM1) and sys-fs/lvm2 (LVM2) don't mix | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Sascha Silbe <sascha-gentoo-bugzilla> |
Component: | [OLD] Core system | Assignee: | Gentoo's Team for Core System packages <base-system> |
Status: | RESOLVED WONTFIX | ||
Severity: | normal | ||
Priority: | High | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | New ebuild for sys-fs/lvm2 including lvm1 binaries as fallback for 2.4 kernels |
Description
Sascha Silbe
2004-03-08 18:31:14 UTC
A Debian developer just told me they use a wrapper that calls the right binaries for the currently running kernel. It's homepage is [1], the current source archive is [2]. [1] http://packages.debian.org/testing/admin/lvm-common [2] http://ftp.debian.org/debian/pool/main/l/lvm-common/lvm-common_1.5.14.tar.gz Created attachment 31963 [details]
New ebuild for sys-fs/lvm2 including lvm1 binaries as fallback for 2.4 kernels
LVM2 2.00.15 contains support for calling the old binaries if running a kernel
without LVM2 support.
This updated ebuild for sys-fs/lvm2 installs the lvm-user binaries as *.lvm1 if
the (local?) USE flag "lvm1" is set.
Not a kernel issue, a lvm1/lvm2 issue, please reassign it for this. Any chance of getting this into the official Portage tree? It works quite well for me so far. I've been out for a while. Can you explain why this is necessary? lvm2 and lvm-user block eachother exactly because they don't mix. On a system running both Linux 2.4 and Linux 2.6 (chosen at boot time, not in parallel :) ) you need the userspace tools of both lvm1 and lvm2 because 2.4 (vanilla) only contains lvm1 and 2.6 (vanilla) only contains lvm2. Using my combined ebuild, you can have both installed (the lvm1 tools will be renamed to *.lvm1). The lvm2 userspace tools will call the lvm1 userspace tools if you're running a 2.4 kernel, so everything works fine both on 2.4 and on 2.6. I've installed it on all of my hosts and had no problem with it so far, so I'd consider it stable. I run into the same problem the other day: I wanted to update a remote server from kernel 2.4 to 2.6. 1. problem: You never know if a kernel upgrade will be successful. 2. problem: lvm1 doesn't support kernel 2.6 (vgdisplay -- LVM driver/module not loaded?) 3. problem: lvm2 doesn't support kernel 2.4 ("Is the original LVM driver using this volume group?") The conclusion of "problem 1" is: I need to be able to step back to 2.4 in case 2.6 fails to boot. But how can I do this if I need to upgrade lvm because of "problem 2" and how can I go back considering "problem 3"? If I update both lvm and kernel at the same time and there are no problems with kernel 2.6 I'll be fine. But what if there are problems? Without lvm1 I won't be able to startup with the older kernel again. A gentoo solution is the 2.4 device mapper patch shipped with gentoo-sources 2.4. But who is using gentoo-sources on a productiv server? An lvm solution is the 2.4 device mapper patch as well but this would mean I need a new 2.4 kernel before I can switch to 2.6. A better solution is - as Sascha recommended - to use a wrapper that decides which lvm version has to be used. Especially if there exists documentation like http://www.gentoo.org/doc/en/migration-to-2.6.xml that says: "The LVM2 tools are fully backwards-compatible with LVM1. Your disk data will not be touched. You are not breaking any backwards-compatibility by doing this, you will continue to be able to boot 2.4 as usual." that ignoes http://www.tldp.org/HOWTO/LVM-HOWTO/lvm2faq.html "If you are using the stable 2.4 device mapper patch from the lvm2 tarball, all the major functionality you'd expect using lvm1 is supported with the lvm2 tools." We are no longer working on 2.4 kernels as active support. This issue can be resolved with a rescue cd with the appropriate support. We are no longer working on 2.4 kernels as active support. This issue can be resolved with a rescue cd with the appropriate support. |