What's the way to install Debian Live on an LVM logical volume? I know that neither kernel nor initramfs image can reside on an LVM volume since the bootloaders don't support these, thus a separate partition would be necessary for them (not to mention the bootloader's files.) However, having Debian Live installed on an Ext3 filesystem on top of an LVM volume seems to have at least the following benefits:
* the filesystem could be expanded or reduced dynamically (with lvreduce(8), lvextend(8) and ext2online(8); it's important for space-scarce media, such as USB Flash drives; * the filesystem could be updated by Rsync, overwriting only the files that were actually changed, thus saving the write cycles resource; it's again important for space-scarce media; * arbitrary number of Live images could be installed on the same media. On the other hand, Ext3 would probably be much less space-efficient than Squashfs. Anyway, IIUC, the only steps to do to make it happen (as of initramfs-tools 0.92j) are: * enable LVM on the `live-premount' stage, or earlier, as by duplicating scripts/local-top/lvm2 also in live-premount/ (but it should be ensured that it's run only after all the media are detected by the kernel); * make a new meaning for the `root=' option when given without `plainroot', roughly: --- scripts/live.~1~ +++ scripts/live @@ -1408,6 +1408,15 @@ then # Do a local boot from hd livefs_root=${ROOT} + elif [ -n "${ROOT}" ] + then + ## do a local mount + log_begin_msg "Mounting live ${ROOT} to ${mountpoint}" + if mount -t ext3 -o ro,noatime "${ROOT}" "${mountpoint}" ; then + livefs_root=${mountpoint} + else + panic "Unable to mount ${ROOT}" + fi else # Scan local devices for the image for i in 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]