On Tue, Jan 30, 2007 at 01:29:52PM +0100, Frans Pop wrote:
While looking through the syslog with this installation report, I noticed
the following lines (repeated) in the syslog:
Jan 24 15:58:11 main-menu[2105]: (process:13045): /lib/partman/choose_method/50lvm/choices: 20:
Jan 24 15:58:11 main-menu[2105]: (process:13045): dmsetup: not found
David, could you have a look at this?
It would be nice if this could be fixed before Etch.
Seems to originate in partman-lvm/choose_method/lvm/choices.
Yes. Grepping through partman-lvm gives only one invocation of dmsetup.
The following lines:
elif grep -q "/dev/mapper/" $dev/device; then
# LVM on device-mapper crypto
device=$(cat $dev/device)
if [ "$(dmsetup status $device | cut -d' ' -f3)" = "crypt" ]; then
lvm=yes
fi
fi
The problem is that dmsetup-udeb is a dependency of cryptsetup-udeb
which is loaded on demand by partman-crypto.
But, since the test is for whether a crypto device has been setup, a
missing dmsetup also means that there is no cryptsetup present and that
no crypto device has been setup. Therefore, it will be enough to guard
the dmsetup invocation with a test that dmsetup also exists.
So I've committed the following fix to partman-lvm:
Index: choose_method/lvm/choices
===================================================================
--- choose_method/lvm/choices (revision 44677)
+++ choose_method/lvm/choices (working copy)
@@ -13,9 +13,11 @@
lvm=yes
elif grep -q "/dev/mapper/" $dev/device; then
# LVM on device-mapper crypto
- device=$(cat $dev/device)
- if [ "$(dmsetup status $device | cut -d' ' -f3)" = "crypt" ]; then
- lvm=yes
+ if type dmsetup > /dev/null 2>&1 ; then
+ device=$(cat $dev/device)
+ if [ "$(dmsetup status $device | cut -d' ' -f3)" = "crypt" ];
then
+ lvm=yes
+ fi
fi
fi
--
David Härdeman