first thought put it in lxc-create then again, conversion is needed too hence i also want an lxc-convert i am coming from a qemu background so qemu-img does create and convert so optimum is to see an lxc-convert and have that function also available as part of lxc-create
On Fri, Jul 1, 2011 at 8:31 PM, Serge E. Hallyn <se...@hallyn.com> wrote: > Hey, > > so lxc-clone will create a snapshot-based clone of an lvm-backed > container in about a second. Creating the first lvm-backed > container is a bit of a pain though. I do it using the script > below, called 'lxclvmconvert' on my machine. So I do > > lxc-create -t ubuntu -f /etc/lxc.conf -n mavbase -- -r maverick > lxclvmconvert mavbase > > and from then on I can do fast > > lxc-clone -s -o mavbase -n mav-bugxyz > > My question is, where do we want to put this functionality? Of course > I *can* put it in the ubuntu template itself, but I'm leary of adding > too many options to that. Consider that just for the lvm support we'd > need to add optional arguments for: > > backing store type: (lvm, loopback file, real blockdev) > backing store fstype > backing store size > other options, i.e. lvm volume group name > > So, do you think it would be better for the container creation templates > to offer this support, or to have a separate tool, not lxclvmconvert, but > maybe 'lxc-convert', which converts a container from any supported backing > type to any other. Backing types I guess could start out by including > > directory (the current way) > lvm > loopback file > raw device > > thanks, > -serge > > #!/bin/sh > > if [ $# -lt 1 ]; then > echo "Usage: $0 container-name <size> <fstype>" > exit 1 > fi > > c=$1 > size=2G > fstype=ext3 > echo "converting container $c" > > if [ $# -gt 1 ]; then > size=$2 > echo "Using size $size" > fi > > if [ $# -gt 2 ]; then > fstype=$3 > echo "Using fstype $fstype" > fi > > if [ ! -d /var/lib/lxc/$c/rootfs ]; then > echo "Container $c doesn't seem to exist?" > exit 1 > fi > > if [ -e /dev/lxc/$c ]; then > echo "/dev/lxc/$c already exists. Bailing" > exit 1 > fi > > lvcreate -L $size -n $c lxc || cleanup > sleep 1 > mkfs -t $fstype /dev/lxc/$c > if [ $? -ne 0 ]; then > echo "Failed to create the filesystem" > lvremove -f /dev/lxc/$c > exit 1 > fi > > mkdir /var/lib/lxc/$c/lvm || { lvremove -f /dev/lxc/$c; exit 1; } > mount -t $fstype /dev/lxc/$c /var/lib/lxc/$c/lvm || { lvremove -f > /dev/lxc/$c; exit 1; } > rsync -va /var/lib/lxc/$c/rootfs/ /var/lib/lxc/$c/lvm || echo "Rsync had > errors, you may want to check; continuing" > umount /var/lib/lxc/$c/lvm > rmdir /var/lib/lxc/$c/lvm > rm -rf /var/lib/lxc/$c/rootfs > mkdir /var/lib/lxc/$c/rootfs > > sed -i '/lxc.rootfs/d' /var/lib/lxc/$c/config > echo "lxc.rootfs = /dev/lxc/$c" >> /var/lib/lxc/$c/config > > echo "Finished" > > > ------------------------------------------------------------------------------ > All of the data generated in your IT infrastructure is seriously valuable. > Why? It contains a definitive record of application performance, security > threats, fraudulent activity, and more. Splunk takes this data and makes > sense of it. IT sense. And common sense. > http://p.sf.net/sfu/splunk-d2d-c2 > _______________________________________________ > Lxc-users mailing list > Lxc-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/lxc-users > ------------------------------------------------------------------------------ EMC VNX: the world's simplest storage, starting under $10K The only unified storage solution that offers unified management Up to 160% more powerful than alternatives and 25% more efficient. Guaranteed. http://p.sf.net/sfu/emc-vnx-dev2dev _______________________________________________ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users