Re: [Lxc-users] lxc-clone -B lvm -L, bug?
Quoting zoolook (nbensa+lxcus...@gmail.com): LXC version: 0.9.0.0~staging~20130708-2041-0ubuntu1~ppa1~raring1 Hello, there's an inconsistency between lxc-create --fssize and lxc-clone -L. lxc-create --fssize accepts size in GB. For example, --fssize 2G mease 2GB (or 2GiB, my brain hurts with all that GB vs GiB stupidity but that's another story.) lxc-clone -L accepts size _only_ in B. In other words, ignores G. Yup. You can see the local functions for parsing the fssize in lxc_clone.c and lxc_create.c. Patch to commonize and improve them would be very welcome. lxc-clone -s -B lvm -L2G... returns: Unable to create new logical volume with no extents sysadmin@lxc0:~$ sudo lvs LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert lxc-test2-root vg_vmstorage owi-a-s- 1,95g lxc-test2x2-root vg_vmstorage swi-a-s- 2,05g lxc-test2-root 0,00 lxc-test4x2-root vg_vmstorage swi-a-s- 1,95g lxc-test2-root 0,00 test2 was created with --fssize 2G test2x2 cloned without -L (note 1,95g vs 2,05g, GB vs GiB? :-) ) test4x2 cloned with -L 20 (doesn't accept -L2G) Thanks! Norberto -- See everything from the browser to the database with AppDynamics Get end-to-end visibility with application monitoring from AppDynamics Isolate bottlenecks and diagnose root cause in seconds. Start your free trial of AppDynamics Pro today! http://pubads.g.doubleclick.net/gampad/clk?id=48808831iu=/4140/ostg.clktrk ___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users -- See everything from the browser to the database with AppDynamics Get end-to-end visibility with application monitoring from AppDynamics Isolate bottlenecks and diagnose root cause in seconds. Start your free trial of AppDynamics Pro today! http://pubads.g.doubleclick.net/gampad/clk?id=48808831iu=/4140/ostg.clktrk ___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users
Re: [Lxc-users] lxc-clone -B lvm -L, bug?
lxc-clone -L accepts size _only_ in B. In other words, ignores G. Yup. You can see the local functions for parsing the fssize in lxc_clone.c and lxc_create.c. Patch to commonize and improve them would be very welcome. Thanks. I'll take a look when I get back home. -- See everything from the browser to the database with AppDynamics Get end-to-end visibility with application monitoring from AppDynamics Isolate bottlenecks and diagnose root cause in seconds. Start your free trial of AppDynamics Pro today! http://pubads.g.doubleclick.net/gampad/clk?id=48808831iu=/4140/ostg.clktrk ___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users
[Lxc-users] lxc-clone -B lvm -L, bug?
LXC version: 0.9.0.0~staging~20130708-2041-0ubuntu1~ppa1~raring1 Hello, there's an inconsistency between lxc-create --fssize and lxc-clone -L. lxc-create --fssize accepts size in GB. For example, --fssize 2G mease 2GB (or 2GiB, my brain hurts with all that GB vs GiB stupidity but that's another story.) lxc-clone -L accepts size _only_ in B. In other words, ignores G. lxc-clone -s -B lvm -L2G... returns: Unable to create new logical volume with no extents sysadmin@lxc0:~$ sudo lvs LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert lxc-test2-root vg_vmstorage owi-a-s- 1,95g lxc-test2x2-root vg_vmstorage swi-a-s- 2,05g lxc-test2-root 0,00 lxc-test4x2-root vg_vmstorage swi-a-s- 1,95g lxc-test2-root 0,00 test2 was created with --fssize 2G test2x2 cloned without -L (note 1,95g vs 2,05g, GB vs GiB? :-) ) test4x2 cloned with -L 20 (doesn't accept -L2G) Thanks! Norberto -- See everything from the browser to the database with AppDynamics Get end-to-end visibility with application monitoring from AppDynamics Isolate bottlenecks and diagnose root cause in seconds. Start your free trial of AppDynamics Pro today! http://pubads.g.doubleclick.net/gampad/clk?id=48808831iu=/4140/ostg.clktrk ___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users
Re: [Lxc-users] lxc-clone -s -B lvm, deletes original lv if no space left!
Quoting zoolook (nbensa+lxcus...@gmail.com): Hi Serge, On Tue, Jun 18, 2013 at 5:57 PM, zoolook nbensa+lxcus...@gmail.com wrote: On Tue, Jun 18, 2013 at 5:39 PM, Serge Hallyn serge.hal...@ubuntu.com wrote: Exactly what code (git commit id or distro+pkg) are you using? Installed: 0.9.0.0~staging~20130612-1544-0ubuntu1~ppa1~raring1 on saucy, with ppa:ubuntu-lxc/daily (0.9.0.0~staging~20130612-1544-0ubuntu1~ppa1~saucy1), no patches applied. sysadmin@lxc3:~$ sudo lvs LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert lxc-test1-root vg_vmstorage -wi-a 7,81g sysadmin@lxc3:~$ sudo lxc-clone -s -p /srv/lxc -P /srv/lxc -o test1 -n test101 Volume group vg_vmstorage has insufficient free space (617 extents): 2097 required. lxc: could not create /dev/vg_vmstorage/lxc-test101-root snapshot of all right, not sure why yet, but the naming of your rootfs is somehow causing the problem. I was able to reproduce this when I renamed my test101 rootfs to xxx-test101-xxx. I'll look into why later today. Thanks! Note, this points out that I need a sanity check in lxc-clone. If the rootfs doesn't have the container name in it, we should refuse cloning or simply change it to $newcontainername, bc we don't know how to go about it. Now your case should be allowed because it has the container name in it, so we can rename it. -serge -- This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev ___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users
Re: [Lxc-users] lxc-clone -s -B lvm, deletes original lv if no space left!
Quoting Serge Hallyn (serge.hal...@ubuntu.com): Quoting zoolook (nbensa+lxcus...@gmail.com): Hi Serge, On Tue, Jun 18, 2013 at 5:57 PM, zoolook nbensa+lxcus...@gmail.com wrote: On Tue, Jun 18, 2013 at 5:39 PM, Serge Hallyn serge.hal...@ubuntu.com wrote: Exactly what code (git commit id or distro+pkg) are you using? Installed: 0.9.0.0~staging~20130612-1544-0ubuntu1~ppa1~raring1 on saucy, with ppa:ubuntu-lxc/daily (0.9.0.0~staging~20130612-1544-0ubuntu1~ppa1~saucy1), no patches applied. sysadmin@lxc3:~$ sudo lvs LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert lxc-test1-root vg_vmstorage -wi-a 7,81g sysadmin@lxc3:~$ sudo lxc-clone -s -p /srv/lxc -P /srv/lxc -o test1 -n test101 Volume group vg_vmstorage has insufficient free space (617 extents): 2097 required. lxc: could not create /dev/vg_vmstorage/lxc-test101-root snapshot of all right, not sure why yet, but the naming of your rootfs is somehow causing the problem. I was able to reproduce this when I renamed my test101 rootfs to xxx-test101-xxx. I'll look into why later today. Thanks! Oh I see the problem. The update_name_and_paths() only replaces the container name if it is a whole word. Need to think about whether it is safe to change that. (What if the container name is 'c'?) -- This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev ___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users
Re: [Lxc-users] lxc-clone -s -B lvm, deletes original lv if no space left!
Quoting Serge Hallyn (serge.hal...@ubuntu.com): Quoting Serge Hallyn (serge.hal...@ubuntu.com): Quoting zoolook (nbensa+lxcus...@gmail.com): Hi Serge, On Tue, Jun 18, 2013 at 5:57 PM, zoolook nbensa+lxcus...@gmail.com wrote: On Tue, Jun 18, 2013 at 5:39 PM, Serge Hallyn serge.hal...@ubuntu.com wrote: Exactly what code (git commit id or distro+pkg) are you using? Installed: 0.9.0.0~staging~20130612-1544-0ubuntu1~ppa1~raring1 on saucy, with ppa:ubuntu-lxc/daily (0.9.0.0~staging~20130612-1544-0ubuntu1~ppa1~saucy1), no patches applied. sysadmin@lxc3:~$ sudo lvs LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert lxc-test1-root vg_vmstorage -wi-a 7,81g sysadmin@lxc3:~$ sudo lxc-clone -s -p /srv/lxc -P /srv/lxc -o test1 -n test101 Volume group vg_vmstorage has insufficient free space (617 extents): 2097 required. lxc: could not create /dev/vg_vmstorage/lxc-test101-root snapshot of all right, not sure why yet, but the naming of your rootfs is somehow causing the problem. I was able to reproduce this when I renamed my test101 rootfs to xxx-test101-xxx. I'll look into why later today. Thanks! Oh I see the problem. The update_name_and_paths() only replaces the container name if it is a whole word. Need to think about whether it is safe to change that. (What if the container name is 'c'?) For that matter, if you call your original container lxc or rootfs, you're gonna have a bad time. So I think I will make sure to only update anything after an '='. Maybe even only in certain lines (lxc.hook, lxc.root, lxc.mount, etc). Then make sure to accept '-' as word splitter. Then do the patch to not remove rootfs if we haven't created it yet. -serge -- This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev ___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users
Re: [Lxc-users] lxc-clone -s -B lvm, deletes original lv if no space left!
Hello Serge, On Mon, Jun 17, 2013 at 4:43 PM, Serge Hallyn serge.hal...@ubuntu.com wrote: Haven't tested, but the following should fix it: Unfortunately, your patch didn't fix it. I put a fprintf in lxcapi_destroy: if (r) { fprintf(stderr,!!! removing %s for %s !!!\n, c-lxc_conf-rootfs.path, c-name); if (r-ops-destroy(r) 0) { ERROR(Error destroying rootfs for %s, c-name); goto out; } } And I get: sysadmin@lxc0:~/lxc/lxc-0.9.0.0~staging~20130612-1544$ sudo lxc-clone -s -B lvm -p /srv/lxc -P /srv/lxc -o test1 -n test101 Volume group vg_vmstorage has insufficient free space (617 extents): 2097 required. lxc: could not create /dev/vg_vmstorage/lxc-test101-root snapshot of /dev/vg_vmstorage/lxc-test1-root lxc: failed getting pathnames for cloned storage: /dev/vg_vmstorage/lxc-test1-root lxc: error copying storage !!! removing /dev/vg_vmstorage/lxc-test1-root for test101 !!! File descriptor 3 (/run/lock/lxc/srv/lxc/test101) leaked on lvremove invocation. Parent PID 3784: lxc-clone Logical volume lxc-test1-root successfully removed lxc: _recursive_rmdir_onedev: failed to delete /srv/lxc/test101 clone failed Note that test101 rootfs should be lxc-test101-root, not lxc-test1-root. So my swag is you meant: c2-lxc_conf-rootfs.path = NULL; Instead of: c-lxc_conf-rootfs.path = NULL; Is this correct? With that small typo (?) fixed, my test now passes, but I'll feel more confident if you can review it. Thanks! Norberto -- This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev ___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users
Re: [Lxc-users] lxc-clone -s -B lvm, deletes original lv if no space left!
Quoting zoolook (nbensa+lxcus...@gmail.com): Hello Serge, On Mon, Jun 17, 2013 at 4:43 PM, Serge Hallyn serge.hal...@ubuntu.com wrote: Haven't tested, but the following should fix it: Unfortunately, your patch didn't fix it. I put a fprintf in lxcapi_destroy: if (r) { fprintf(stderr,!!! removing %s for %s !!!\n, c-lxc_conf-rootfs.path, c-name); if (r-ops-destroy(r) 0) { ERROR(Error destroying rootfs for %s, c-name); goto out; } } And I get: sysadmin@lxc0:~/lxc/lxc-0.9.0.0~staging~20130612-1544$ sudo lxc-clone -s -B lvm -p /srv/lxc -P /srv/lxc -o test1 -n test101 Volume group vg_vmstorage has insufficient free space (617 extents): 2097 required. lxc: could not create /dev/vg_vmstorage/lxc-test101-root snapshot of /dev/vg_vmstorage/lxc-test1-root lxc: failed getting pathnames for cloned storage: /dev/vg_vmstorage/lxc-test1-root lxc: error copying storage !!! removing /dev/vg_vmstorage/lxc-test1-root for test101 !!! File descriptor 3 (/run/lock/lxc/srv/lxc/test101) leaked on lvremove invocation. Parent PID 3784: lxc-clone Logical volume lxc-test1-root successfully removed lxc: _recursive_rmdir_onedev: failed to delete /srv/lxc/test101 clone failed Note that test101 rootfs should be lxc-test101-root, not lxc-test1-root. So my swag is you meant: c2-lxc_conf-rootfs.path = NULL; Uh, yeah. I did :) Instead of: c-lxc_conf-rootfs.path = NULL; Is this correct? With that small typo (?) fixed, my test now passes, but I'll feel more confident if you can review it. Great, I'm setting up a test vm for it, then will push it out. Thanks! Though, I'm currently trying to reproduce with the lxc in ubuntu-lxc saucy ppa, and failing. It's not deleting the original lv for me. I just see: serge@ubuntu:~$ sudo lxc-clone -o x1 -n x2 Volume group lxc has insufficient free space (559 extents): 2097 required. lxc: Error creating new lvm blockdev lxc: failed getting pathnames for cloned storage: /dev/lxc/x1 lxc: error copying storage clone failed serge@ubuntu:~$ sudo lvscan ACTIVE'/dev/lxc/x1' [7.81 GiB] inherit thanks, -serge -- This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev ___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users
Re: [Lxc-users] lxc-clone -s -B lvm, deletes original lv if no space left!
On Tue, Jun 18, 2013 at 1:09 PM, Serge Hallyn serge.hal...@ubuntu.com wrote: Though, I'm currently trying to reproduce with the lxc in ubuntu-lxc saucy ppa, and failing. It's not deleting the original lv for me. I just see: Maybe the fact that I don't use the default lxc vg name? :-) I can test sausy tonight if you want. Just give some time to download the iso and setup a vm. Regards, Norberto -- This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev ___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users
Re: [Lxc-users] lxc-clone -s -B lvm, deletes original lv if no space left!
Quoting zoolook (nbensa+lxcus...@gmail.com): On Tue, Jun 18, 2013 at 1:09 PM, Serge Hallyn serge.hal...@ubuntu.com wrote: Though, I'm currently trying to reproduce with the lxc in ubuntu-lxc saucy ppa, and failing. It's not deleting the original lv for me. I just see: Maybe the fact that I don't use the default lxc vg name? :-) No, not that. Looking at the lxcapi_clone() function, it calls update_name_and_paths() before we ever create c2, and that function updates the lxc.rootfs in the configuration file. So when I run lxc-clone -o p1 -n p2, it actually looks for /dev/vg0/p2 to destroy. Exactly what code (git commit id or distro+pkg) are you using? -serge -- This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev ___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users
Re: [Lxc-users] lxc-clone -s -B lvm, deletes original lv if no space left!
On Tue, Jun 18, 2013 at 5:39 PM, Serge Hallyn serge.hal...@ubuntu.com wrote: Quoting zoolook (nbensa+lxcus...@gmail.com): On Tue, Jun 18, 2013 at 1:09 PM, Serge Hallyn serge.hal...@ubuntu.com wrote: Though, I'm currently trying to reproduce with the lxc in ubuntu-lxc saucy ppa, and failing. It's not deleting the original lv for me. I just see: Maybe the fact that I don't use the default lxc vg name? :-) No, not that. Looking at the lxcapi_clone() function, it calls update_name_and_paths() before we ever create c2, and that function updates the lxc.rootfs in the configuration file. So when I run lxc-clone -o p1 -n p2, it actually looks for /dev/vg0/p2 to destroy. Exactly what code (git commit id or distro+pkg) are you using? Installed: 0.9.0.0~staging~20130612-1544-0ubuntu1~ppa1~raring1 -- This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev ___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users
Re: [Lxc-users] lxc-clone -s -B lvm, deletes original lv if no space left!
Hi Serge, On Tue, Jun 18, 2013 at 5:57 PM, zoolook nbensa+lxcus...@gmail.com wrote: On Tue, Jun 18, 2013 at 5:39 PM, Serge Hallyn serge.hal...@ubuntu.com wrote: Exactly what code (git commit id or distro+pkg) are you using? Installed: 0.9.0.0~staging~20130612-1544-0ubuntu1~ppa1~raring1 on saucy, with ppa:ubuntu-lxc/daily (0.9.0.0~staging~20130612-1544-0ubuntu1~ppa1~saucy1), no patches applied. sysadmin@lxc3:~$ sudo lvs LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert lxc-test1-root vg_vmstorage -wi-a 7,81g sysadmin@lxc3:~$ sudo lxc-clone -s -p /srv/lxc -P /srv/lxc -o test1 -n test101 Volume group vg_vmstorage has insufficient free space (617 extents): 2097 required. lxc: could not create /dev/vg_vmstorage/lxc-test101-root snapshot of /dev/vg_vmstorage/lxc-test1-root lxc: failed getting pathnames for cloned storage: /dev/vg_vmstorage/lxc-test1-root lxc: error copying storage File descriptor 3 (/run/lock/lxc/srv/lxc/test101) leaked on lvremove invocation. Parent PID 2436: lxc-clone Logical volume lxc-test1-root successfully removed lxc: _recursive_rmdir_onedev: failed to delete /srv/lxc/test101 clone failed sysadmin@lxc3:~$ sudo lvs and BTW, why do I get lxc: _recursive_rmdir_onedev: failed to delete? I need to rm -rf /path/to/container. Same behaviour with lxc-destroy. Thanks! Norberto -- This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev ___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users
[Lxc-users] lxc-clone -s -B lvm, deletes original lv if no space left!
Hello, this is one is weird. lxc-clone removes the original volume if there's no space to create a snapshot for the clone ii lxc 0.9.0.0~staging~2013 amd64 Linux Containers userspace tools sysadmin@lxc0:~$ sudo lxc-clone -s -B lvm -p /srv/lxc -P /srv/lxc -o test1 -n test101 Volume group vg_vmstorage has insufficient free space (617 extents): 2097 required. lxc: could not create /dev/vg_vmstorage/lxc-test101-root snapshot of /dev/vg_vmstorage/lxc-test1-root lxc: failed getting pathnames for cloned storage: /dev/vg_vmstorage/lxc-test1-root lxc: error copying storage File descriptor 3 (/run/lock/lxc/srv/lxc/test101) leaked on lvremove invocation. Parent PID 2301: lxc-clone Logical volume lxc-test1-root successfully removed lxc: _recursive_rmdir_onedev: failed to delete /srv/lxc/test101 clone failed The vg is small (10GB). The original container is 8G. It's a test cluster so no damage is done. Thanks! -- This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev ___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users
[Lxc-users] lxc clone onto the host
I have a service that is running inside container perfectly. I had deployed it using node.js package manager (npm). Now I wanted to run the service on the host itself instead of the container due to some disk space issues I am running into. Is there a way like lxc-clone that clones the container to the host itself, instead of cloning to another container. Thanks calerius -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users
Re: [Lxc-users] lxc clone onto the host
On Mon, Jul 30, 2012 at 9:59 AM, calerius D'Souza caler...@gmail.com wrote: I have a service that is running inside container perfectly. I had deployed it using node.js package manager (npm). Now I wanted to run the service on the host itself instead of the container due to some disk space issues I am running into. Why don't you simply add disk space to the container? Is there a way like lxc-clone that clones the container to the host itself, instead of cloning to another container. It wouldn't make sense, since cloning would overwrite everything. It's like asking can I format my currently running root filesystem? -- Fajar -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users
Re: [Lxc-users] lxc-clone
Quoting Ramez Hanna (rha...@informatiq.org): Hi, I have started using lxc to setup a pre-production system instead of KVM at first glance clone seemd to me that it would copy everything to a new roots but turns out that in case of LVM it will snapshot AFAIK snapshots are meant more for backup or testing some changes and discarding them later do you think it makes sense if I modify the script in this way if user doesn't specify -s, then a new lv is created and copy all comtents to it, rather than snapshot which would work if user uses the -s option? Yes, I guess I didn't implement that bit yet, but not specifying -s was meant to do a simple copy. You'll probably want to check whether the original was a simple directory tree or an lvm, and only lvcreate if the original was an lvm. (then lxc-convert can offer conversion from one to the other.) -serge -- 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
Re: [Lxc-users] lxc-clone
On Mon, Aug 29, 2011 at 4:19 PM, Serge Hallyn serge.hal...@canonical.com wrote: Quoting Ramez Hanna (rha...@informatiq.org): Hi, I have started using lxc to setup a pre-production system instead of KVM at first glance clone seemd to me that it would copy everything to a new roots but turns out that in case of LVM it will snapshot AFAIK snapshots are meant more for backup or testing some changes and discarding them later do you think it makes sense if I modify the script in this way if user doesn't specify -s, then a new lv is created and copy all comtents to it, rather than snapshot which would work if user uses the -s option? Yes, I guess I didn't implement that bit yet, but not specifying -s was meant to do a simple copy. You'll probably want to check whether the original was a simple directory tree or an lvm, and only lvcreate if the original was an lvm. (then lxc-convert can offer conversion from one to the other.) -serge I did implemet that patch submitted yesterday, would appreciate any comments -- Special Offer -- Download ArcSight Logger for FREE! Finally, a world-class log management solution at an even better price-free! And you'll get a free Love Thy Logs t-shirt when you download Logger. Secure your free ArcSight Logger TODAY! http://p.sf.net/sfu/arcsisghtdev2dev ___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users
Re: [Lxc-users] lxc-clone
Hi, I have started using lxc to setup a pre-production system instead of KVM at first glance clone seemd to me that it would copy everything to a new roots but turns out that in case of LVM it will snapshot AFAIK snapshots are meant more for backup or testing some changes and discarding them later do you think it makes sense if I modify the script in this way if user doesn't specify -s, then a new lv is created and copy all comtents to it, rather than snapshot which would work if user uses the -s option? On Tue, Jun 21, 2011 at 8:58 PM, Serge Hallyn serge.hal...@canonical.com wrote: Hi Daniel, Quoting Daniel Lezcano (daniel.lezc...@free.fr): +echo Tweaking configuration +cp $lxc_path/$lxc_orig/config $lxc_path/$lxc_new/config +sed -i '/lxc.utsname/d' $lxc_path/$lxc_new/config +echo lxc.utsname = $hostname $lxc_path/$lxc_new/config We should not assume lxc.utsname is in the configuration file in order to not write a hostname in all the cases. The user may want to let the container to setup itself the hostname. What do you think is the best way to do this? We could allow the user to specify a 'firstboot' script, which gets copied into root directory of the container. Maybe boot the container when it's done, run /firstboot.sh, and shut down. Or just let that happen when the user first boots. We could use a /etc/init.d/lxc-firstboot script, but that will only work if the container's init system actually looks at sysvinit scripts. Obviously sysvinit and upstart do, and I must assume that systemd does. lxc-init I assume doesn't. Mmh, that's look a bit complicate for the user. I was thinking about something simpler like: grep -q lxc.utsname $lxc_path/$lxc_new/config if [ $? == 0 ]; then sed -e s/lxc.utsname/lxc.utsname=$hostname $lxc_path/$lxc_new/config else echo lxc.utsname = $hostname $lxc_path/$lxc_new/config fi I started changing my code to this, but now am wondering how this differs from what I was doing, which was: sed -i '/lxc.utsname/d' $lxc_path/$lxc_new/config echo lxc.utsname = $hostname $lxc_path/$lxc_new/config The only difference is that in mine, if the original config had a hostname at top of file, it'll now be at bottom of file. But with both your snippets and mine, the 'lxc.utsname = new_hostname' will be the one and only utsname in the config. If you still think it's worth changing I'll do so, but I like that mine is shorter. -serge -- EditLive Enterprise is the world's most technically advanced content authoring tool. Experience the power of Track Changes, Inline Image Editing and ensure content is compliant with Accessibility Checking. http://p.sf.net/sfu/ephox-dev2dev ___ 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
Re: [Lxc-users] lxc-clone
Hi Daniel, Quoting Daniel Lezcano (daniel.lezc...@free.fr): +echo Tweaking configuration +cp $lxc_path/$lxc_orig/config $lxc_path/$lxc_new/config +sed -i '/lxc.utsname/d' $lxc_path/$lxc_new/config +echo lxc.utsname = $hostname $lxc_path/$lxc_new/config We should not assume lxc.utsname is in the configuration file in order to not write a hostname in all the cases. The user may want to let the container to setup itself the hostname. What do you think is the best way to do this? We could allow the user to specify a 'firstboot' script, which gets copied into root directory of the container. Maybe boot the container when it's done, run /firstboot.sh, and shut down. Or just let that happen when the user first boots. We could use a /etc/init.d/lxc-firstboot script, but that will only work if the container's init system actually looks at sysvinit scripts. Obviously sysvinit and upstart do, and I must assume that systemd does. lxc-init I assume doesn't. Mmh, that's look a bit complicate for the user. I was thinking about something simpler like: grep -q lxc.utsname $lxc_path/$lxc_new/config if [ $? == 0 ]; then sed -e s/lxc.utsname/lxc.utsname=$hostname $lxc_path/$lxc_new/config else echo lxc.utsname = $hostname $lxc_path/$lxc_new/config fi I started changing my code to this, but now am wondering how this differs from what I was doing, which was: sed -i '/lxc.utsname/d' $lxc_path/$lxc_new/config echo lxc.utsname = $hostname $lxc_path/$lxc_new/config The only difference is that in mine, if the original config had a hostname at top of file, it'll now be at bottom of file. But with both your snippets and mine, the 'lxc.utsname = new_hostname' will be the one and only utsname in the config. If you still think it's worth changing I'll do so, but I like that mine is shorter. -serge -- EditLive Enterprise is the world's most technically advanced content authoring tool. Experience the power of Track Changes, Inline Image Editing and ensure content is compliant with Accessibility Checking. http://p.sf.net/sfu/ephox-dev2dev ___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users
Re: [Lxc-users] lxc-clone
On 04/06/2011 04:05 PM, Serge E. Hallyn wrote: Quoting Daniel Lezcano (daniel.lezc...@free.fr): What do you think is the best way to do this? We could allow the user to specify a 'firstboot' script, which gets copied into root directory of the container. Maybe boot the container when it's done, run /firstboot.sh, and shut down. Or just let that happen when the user first boots. We could use a /etc/init.d/lxc-firstboot script, but that will only work if the container's init system actually looks at sysvinit scripts. Obviously sysvinit and upstart do, and I must assume that systemd does. lxc-init I assume doesn't. Mmh, that's look a bit complicate for the user. I was thinking about something simpler like: grep -q lxc.utsname $lxc_path/$lxc_new/config if [ $? == 0 ]; then sed -e s/lxc.utsname/lxc.utsname=$hostname $lxc_path/$lxc_new/config else echo lxc.utsname = $hostname $lxc_path/$lxc_new/config fi and so for the rest of the configuration variables. Ok, yeah, that'll be necessary and independent of the distro. But I do think a firstboot option will be useful both for -clone and -create. It can be totally optional so as not to confuse those who don't want it. I am not sure to understand what is for the 'firstboot' option. Can you elaborate a bit ? -- Benefiting from Server Virtualization: Beyond Initial Workload Consolidation -- Increasing the use of server virtualization is a top priority.Virtualization can reduce costs, simplify management, and improve application availability and disaster protection. Learn more about boosting the value of server virtualization. http://p.sf.net/sfu/vmware-sfdev2dev ___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users
Re: [Lxc-users] lxc-clone
On 04/05/2011 02:52 PM, Serge Hallyn wrote: Quoting Daniel Lezcano (daniel.lezc...@free.fr): I think more configuration tweaking will be needed but this patch looks good for me. I'm hoping to set up a machine on which to play with lxc on btrfs snapshots sometime this week. (In the background, starting the build now). Nice :) +echo Tweaking configuration +cp $lxc_path/$lxc_orig/config $lxc_path/$lxc_new/config +sed -i '/lxc.utsname/d' $lxc_path/$lxc_new/config +echo lxc.utsname = $hostname $lxc_path/$lxc_new/config We should not assume lxc.utsname is in the configuration file in order to not write a hostname in all the cases. The user may want to let the container to setup itself the hostname. What do you think is the best way to do this? We could allow the user to specify a 'firstboot' script, which gets copied into root directory of the container. Maybe boot the container when it's done, run /firstboot.sh, and shut down. Or just let that happen when the user first boots. We could use a /etc/init.d/lxc-firstboot script, but that will only work if the container's init system actually looks at sysvinit scripts. Obviously sysvinit and upstart do, and I must assume that systemd does. lxc-init I assume doesn't. Mmh, that's look a bit complicate for the user. I was thinking about something simpler like: grep -q lxc.utsname $lxc_path/$lxc_new/config if [ $? == 0 ]; then sed -e s/lxc.utsname/lxc.utsname=$hostname $lxc_path/$lxc_new/config else echo lxc.utsname = $hostname $lxc_path/$lxc_new/config fi and so for the rest of the configuration variables. I suspect the configuration tweaks will be more complicated than that.. For example: lxc.network.veth.peer = veth1234 should be removed or replaced by a random name. But we can improve the different configuration tweaks later. Thanks for looking it over, Daniel. I'm using this heavily every day, so am really keen on polishing it :) Thanks for this command, I think it is very useful. By the way, did the lxc.rootfs=lvm_image worked ? Thanks -- Daniel -- Xperia(TM) PLAY It's a major breakthrough. An authentic gaming smartphone on the nation's most reliable network. And it wants your games. http://p.sf.net/sfu/verizon-sfdev ___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users
Re: [Lxc-users] lxc-clone
Quoting Daniel Lezcano (daniel.lezc...@free.fr): What do you think is the best way to do this? We could allow the user to specify a 'firstboot' script, which gets copied into root directory of the container. Maybe boot the container when it's done, run /firstboot.sh, and shut down. Or just let that happen when the user first boots. We could use a /etc/init.d/lxc-firstboot script, but that will only work if the container's init system actually looks at sysvinit scripts. Obviously sysvinit and upstart do, and I must assume that systemd does. lxc-init I assume doesn't. Mmh, that's look a bit complicate for the user. I was thinking about something simpler like: grep -q lxc.utsname $lxc_path/$lxc_new/config if [ $? == 0 ]; then sed -e s/lxc.utsname/lxc.utsname=$hostname $lxc_path/$lxc_new/config else echo lxc.utsname = $hostname $lxc_path/$lxc_new/config fi and so for the rest of the configuration variables. Ok, yeah, that'll be necessary and independent of the distro. But I do think a firstboot option will be useful both for -clone and -create. It can be totally optional so as not to confuse those who don't want it. I suspect the configuration tweaks will be more complicated than that.. For example: lxc.network.veth.peer = veth1234 should be removed or replaced by a random name. Sigh, yeah. But we can improve the different configuration tweaks later. Phes :) Thanks for looking it over, Daniel. I'm using this heavily every day, so am really keen on polishing it :) Thanks for this command, I think it is very useful. By the way, did the lxc.rootfs=lvm_image worked ? Yup! Now, to do btrfs (I got sidetracked and won't be able to get to it this week probably), we will probably want to be able to specify a bind mount source. That way we can mount a btrfs somewhere like /opt/lxc. Otherwise IIRC the way btrfs works we won't be able to create a snapshot from /var/lib/lxc/natty/rootfs for /var/lib/lxc/n2/rootfs, because the snapshots are are created as sibling directories. Can you think of a clean way to do that or add that to the current config format? thanks, -serge signature.asc Description: Digital signature -- Xperia(TM) PLAY It's a major breakthrough. An authentic gaming smartphone on the nation's most reliable network. And it wants your games. http://p.sf.net/sfu/verizon-sfdev___ Lxc-users mailing list Lxc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-users
Re: [Lxc-users] lxc-clone
On 03/30/2011 06:29 PM, Serge E. Hallyn wrote: I've replaced most of my previous use of kvm and cloud instances for bug investigations with lxc instances. To emulate my older workflows, I've created lxc-clone. My diff against the current natty lxc package is attached. I've written up how I use this at s3hh.wordpress.com. Briefly, I have a single pristine container, with LVM rootfs, for each of lucid, maverick, and natty. When I want a container, I lxc-clone -o natty -n n1 -s lxc-start -n n1 which takes about 5 seconds altogether. Ruin n1 however I like, and lxc-destroy -l -n n1 when done. It needs fleshing out, but it's at the point where it does exactly what I need. The next thing I'm likely to add will be btrfs snapshotting, not sure when. Daniel, is this something you'd consider adding? I assume that if so, then there are changes you'd like to make to the interface :) Hi Serge, yes, it is an interesting feature, thanks for the patch. I think more configuration tweaking will be needed but this patch looks good for me. === modified file 'configure.ac' --- configure.ac 2011-03-10 07:25:34 + +++ configure.ac 2011-03-30 15:36:58 + @@ -156,6 +156,7 @@ src/lxc/lxc-setuid src/lxc/lxc-version src/lxc/lxc-create + src/lxc/lxc-clone src/lxc/lxc-destroy ]) === modified file 'lxc.spec' It should be lxc.spec.in --- lxc.spec 2011-03-10 07:25:34 + +++ lxc.spec 2011-03-30 15:36:58 + @@ -78,6 +78,7 @@ %{_bindir}/* %attr(4111,root,root) %{_bindir}/lxc-attach %attr(4111,root,root) %{_bindir}/lxc-create +%attr(4111,root,root) %{_bindir}/lxc-clone %attr(4111,root,root) %{_bindir}/lxc-start %attr(4111,root,root) %{_bindir}/lxc-netstat %attr(4111,root,root) %{_bindir}/lxc-unshare === modified file 'src/lxc/Makefile.am' --- src/lxc/Makefile.am 2011-03-10 07:25:34 + +++ src/lxc/Makefile.am 2011-03-30 15:36:58 + @@ -72,6 +72,7 @@ lxc-setuid \ lxc-version \ lxc-create \ + lxc-clone \ lxc-destroy bin_PROGRAMS = \ === modified file 'src/lxc/Makefile.in' Makefile.in is generated. I suppose it is the diff command which integrated the configure and Makefile.in in the diff result. === added file 'src/lxc/lxc-clone.in' --- src/lxc/lxc-clone.in 1970-01-01 00:00:00 + +++ src/lxc/lxc-clone.in 2011-03-30 15:36:58 + @@ -0,0 +1,206 @@ +#!/bin/bash + +# +# lxc: linux Container library + +# Authors: +# Serge Hallynserge.hal...@ubuntu.com +# Daniel Lezcanodaniel.lezc...@free.fr + +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +usage() { +echo usage: lxc-clone -oorig -nnew [-s] [-h] [-L fssize] [-v vgname] +} + +help() { +usage +echo +echo creates a lxc system object. +echo +echo Options: +echo orig: name of the original container +echo new : name of the new container +echo -s : make the new rootfs a snapshot of the original +echo fssize : size if creating a new fs. By default, 2G +echo vgname : lvm volume group name, lxc by default +} + +shortoptions='ho:n:sL:v:' +longoptions='help,orig:,name:,snapshot,fssize,vgname' +lxc_path=/var/lib/lxc +bindir=/usr/bin +snapshot=no +lxc_size=2G +lxc_vg=lxc + +getopt=$(getopt -o $shortoptions --longoptions $longoptions -- $@) +if [ $? != 0 ]; then +usage +exit 1; +fi + +eval set -- $getopt + +while true; do +case $1 in + -h|--help) + help + exit 1 + ;; + -s|--snapshot) + shift + snapshot=yes + ;; + -o|--orig) + shift + lxc_orig=$1 + shift + ;; + -L|--fssize) + shift + lxc_size=$1 + shift + ;; + -v|--vgname) + shift + lxc_vg=$1 + shift + ;; + -n|--new) + shift + lxc_new=$1 + shift + ;; +--) + shift + break;; +*) + echo $1 + usage +
Re: [Lxc-users] lxc-clone
I saw this on the blog. Very useful and time saver. Exactly what alot of pople were looking for. On Wed, Mar 30, 2011 at 7:29 PM, Serge E. Hallyn serge.hal...@ubuntu.comwrote: I've replaced most of my previous use of kvm and cloud instances for bug investigations with lxc instances. To emulate my older workflows, I've created lxc-clone. My diff against the current natty lxc package is attached. I've written up how I use this at s3hh.wordpress.com. Briefly, I have a single pristine container, with LVM rootfs, for each of lucid, maverick, and natty. When I want a container, I lxc-clone -o natty -n n1 -s lxc-start -n n1 which takes about 5 seconds altogether. Ruin n1 however I like, and lxc-destroy -l -n n1 when done. It needs fleshing out, but it's at the point where it does exactly what I need. The next thing I'm likely to add will be btrfs snapshotting, not sure when. Daniel, is this something you'd consider adding? I assume that if so, then there are changes you'd like to make to the interface :) thanks, -serge === modified file 'configure' --- configure 2011-03-10 07:25:34 + +++ configure 2011-03-30 15:36:58 + @@ -5057,7 +5057,7 @@ CFLAGS=$CFLAGS -Wall fi -ac_config_files=$ac_config_files Makefile lxc.pc lxc.spec config/Makefile doc/Makefile doc/lxc-create.sgml doc/lxc-destroy.sgml doc/lxc-execute.sgml doc/lxc-start.sgml doc/lxc-checkpoint.sgml doc/lxc-restart.sgml doc/lxc-stop.sgml doc/lxc-console.sgml doc/lxc-freeze.sgml doc/lxc-unfreeze.sgml doc/lxc-monitor.sgml doc/lxc-wait.sgml doc/lxc-ls.sgml doc/lxc-ps.sgml doc/lxc-cgroup.sgml doc/lxc-kill.sgml doc/lxc.conf.sgml doc/lxc.sgml doc/common_options.sgml doc/see_also.sgml doc/rootfs/Makefile doc/examples/Makefile doc/examples/lxc-macvlan.conf doc/examples/lxc-vlan.conf doc/examples/lxc-no-netns.conf doc/examples/lxc-empty-netns.conf doc/examples/lxc-phys.conf doc/examples/lxc-veth.conf doc/examples/lxc-complex.conf templates/Makefile templates/lxc-lenny templates/lxc-debian templates/lxc-lucid templates/lxc-maverick templates/lxc-natty templates/lxc-busybox templates/lxc-fedora templates/lxc-sshd src/Makefile src/lxc/Makefile src/lxc/lxc-ps src/lxc/lxc-ls src/lxc/lxc-netstat src/lxc/lxc-checkconfig src/lxc/lxc-setcap src/lxc/lxc-setuid src/lxc/lxc-version src/lxc/lxc-create src/lxc/lxc-destroy +ac_config_files=$ac_config_files Makefile lxc.pc lxc.spec config/Makefile doc/Makefile doc/lxc-create.sgml doc/lxc-destroy.sgml doc/lxc-execute.sgml doc/lxc-start.sgml doc/lxc-checkpoint.sgml doc/lxc-restart.sgml doc/lxc-stop.sgml doc/lxc-console.sgml doc/lxc-freeze.sgml doc/lxc-unfreeze.sgml doc/lxc-monitor.sgml doc/lxc-wait.sgml doc/lxc-ls.sgml doc/lxc-ps.sgml doc/lxc-cgroup.sgml doc/lxc-kill.sgml doc/lxc.conf.sgml doc/lxc.sgml doc/common_options.sgml doc/see_also.sgml doc/rootfs/Makefile doc/examples/Makefile doc/examples/lxc-macvlan.conf doc/examples/lxc-vlan.conf doc/examples/lxc-no-netns.conf doc/examples/lxc-empty-netns.conf doc/examples/lxc-phys.conf doc/examples/lxc-veth.conf doc/examples/lxc-complex.conf templates/Makefile templates/lxc-lenny templates/lxc-debian templates/lxc-lucid templates/lxc-maverick templates/lxc-natty templates/lxc-busybox templates/lxc-fedora templates/lxc-sshd src/Makefile src/lxc/Makefile src/lxc/lxc-ps src/lxc/lxc-ls src/lxc/lxc-netstat src/lxc/lxc-checkconfig src/lxc/lxc-setcap src/lxc/lxc-setuid src/lxc/lxc-version src/lxc/lxc-create src/lxc/lxc-clone src/lxc/lxc-destroy ac_config_commands=$ac_config_commands default @@ -5842,6 +5842,7 @@ src/lxc/lxc-setuid) CONFIG_FILES=$CONFIG_FILES src/lxc/lxc-setuid ;; src/lxc/lxc-version) CONFIG_FILES=$CONFIG_FILES src/lxc/lxc-version ;; src/lxc/lxc-create) CONFIG_FILES=$CONFIG_FILES src/lxc/lxc-create ;; +src/lxc/lxc-clone) CONFIG_FILES=$CONFIG_FILES src/lxc/lxc-clone ;; src/lxc/lxc-destroy) CONFIG_FILES=$CONFIG_FILES src/lxc/lxc-destroy ;; default) CONFIG_COMMANDS=$CONFIG_COMMANDS default ;; === modified file 'configure.ac' --- configure.ac2011-03-10 07:25:34 + +++ configure.ac2011-03-30 15:36:58 + @@ -156,6 +156,7 @@ src/lxc/lxc-setuid src/lxc/lxc-version src/lxc/lxc-create + src/lxc/lxc-clone src/lxc/lxc-destroy ]) === modified file 'lxc.spec' --- lxc.spec2011-03-10 07:25:34 + +++ lxc.spec2011-03-30 15:36:58 + @@ -78,6 +78,7 @@ %{_bindir}/* %attr(4111,root,root) %{_bindir}/lxc-attach %attr(4111,root,root) %{_bindir}/lxc-create +%attr(4111,root,root) %{_bindir}/lxc-clone %attr(4111,root,root) %{_bindir}/lxc-start %attr(4111,root,root) %{_bindir}/lxc-netstat %attr(4111,root,root) %{_bindir}/lxc-unshare === modified file 'src/lxc/Makefile.am' --- src/lxc/Makefile.am 2011-03-10 07:25:34 + +++ src/lxc/Makefile.am 2011-03-30 15:36:58 + @@ -72,6 +72,7 @@ lxc-setuid \ lxc-version \ lxc-create \ +
[Lxc-users] lxc-clone
I've replaced most of my previous use of kvm and cloud instances for bug investigations with lxc instances. To emulate my older workflows, I've created lxc-clone. My diff against the current natty lxc package is attached. I've written up how I use this at s3hh.wordpress.com. Briefly, I have a single pristine container, with LVM rootfs, for each of lucid, maverick, and natty. When I want a container, I lxc-clone -o natty -n n1 -s lxc-start -n n1 which takes about 5 seconds altogether. Ruin n1 however I like, and lxc-destroy -l -n n1 when done. It needs fleshing out, but it's at the point where it does exactly what I need. The next thing I'm likely to add will be btrfs snapshotting, not sure when. Daniel, is this something you'd consider adding? I assume that if so, then there are changes you'd like to make to the interface :) thanks, -serge === modified file 'configure' --- configure 2011-03-10 07:25:34 + +++ configure 2011-03-30 15:36:58 + @@ -5057,7 +5057,7 @@ CFLAGS=$CFLAGS -Wall fi -ac_config_files=$ac_config_files Makefile lxc.pc lxc.spec config/Makefile doc/Makefile doc/lxc-create.sgml doc/lxc-destroy.sgml doc/lxc-execute.sgml doc/lxc-start.sgml doc/lxc-checkpoint.sgml doc/lxc-restart.sgml doc/lxc-stop.sgml doc/lxc-console.sgml doc/lxc-freeze.sgml doc/lxc-unfreeze.sgml doc/lxc-monitor.sgml doc/lxc-wait.sgml doc/lxc-ls.sgml doc/lxc-ps.sgml doc/lxc-cgroup.sgml doc/lxc-kill.sgml doc/lxc.conf.sgml doc/lxc.sgml doc/common_options.sgml doc/see_also.sgml doc/rootfs/Makefile doc/examples/Makefile doc/examples/lxc-macvlan.conf doc/examples/lxc-vlan.conf doc/examples/lxc-no-netns.conf doc/examples/lxc-empty-netns.conf doc/examples/lxc-phys.conf doc/examples/lxc-veth.conf doc/examples/lxc-complex.conf templates/Makefile templates/lxc-lenny templates/lxc-debian templates/lxc-lucid templates/lxc-maverick templates/lxc-natty templates/lxc-busybox templates/lxc-fedora templates/lxc-sshd src/Makefile src/lxc/Makefile src/lxc/lxc-ps src/lxc/lxc-ls src/lxc/lxc-netstat src/lxc/lxc-checkconfig src/lxc/lxc-setcap src/lxc/lxc-setuid src/lxc/lxc-version src/lxc/lxc-create src/lxc/lxc-destroy +ac_config_files=$ac_config_files Makefile lxc.pc lxc.spec config/Makefile doc/Makefile doc/lxc-create.sgml doc/lxc-destroy.sgml doc/lxc-execute.sgml doc/lxc-start.sgml doc/lxc-checkpoint.sgml doc/lxc-restart.sgml doc/lxc-stop.sgml doc/lxc-console.sgml doc/lxc-freeze.sgml doc/lxc-unfreeze.sgml doc/lxc-monitor.sgml doc/lxc-wait.sgml doc/lxc-ls.sgml doc/lxc-ps.sgml doc/lxc-cgroup.sgml doc/lxc-kill.sgml doc/lxc.conf.sgml doc/lxc.sgml doc/common_options.sgml doc/see_also.sgml doc/rootfs/Makefile doc/examples/Makefile doc/examples/lxc-macvlan.conf doc/examples/lxc-vlan.conf doc/examples/lxc-no-netns.conf doc/examples/lxc-empty-netns.conf doc/examples/lxc-phys.conf doc/examples/lxc-veth.conf doc/examples/lxc-complex.conf templates/Makefile templates/lxc-lenny templates/lxc-debian templates/lxc-lucid templates/lxc-maverick templates/lxc-natty templates/lxc-busybox templates/lxc-fedora templates/lxc-sshd src/Makefile src/lxc/Makefile src/lxc/lxc-ps src/lxc/lxc-ls src/lxc/lxc-netstat src/lxc/lxc-checkconfig src/lxc/lxc-setcap src/lxc/lxc-setuid src/lxc/lxc-version src/lxc/lxc-create src/lxc/lxc-clone src/lxc/lxc-destroy ac_config_commands=$ac_config_commands default @@ -5842,6 +5842,7 @@ src/lxc/lxc-setuid) CONFIG_FILES=$CONFIG_FILES src/lxc/lxc-setuid ;; src/lxc/lxc-version) CONFIG_FILES=$CONFIG_FILES src/lxc/lxc-version ;; src/lxc/lxc-create) CONFIG_FILES=$CONFIG_FILES src/lxc/lxc-create ;; +src/lxc/lxc-clone) CONFIG_FILES=$CONFIG_FILES src/lxc/lxc-clone ;; src/lxc/lxc-destroy) CONFIG_FILES=$CONFIG_FILES src/lxc/lxc-destroy ;; default) CONFIG_COMMANDS=$CONFIG_COMMANDS default ;; === modified file 'configure.ac' --- configure.ac2011-03-10 07:25:34 + +++ configure.ac2011-03-30 15:36:58 + @@ -156,6 +156,7 @@ src/lxc/lxc-setuid src/lxc/lxc-version src/lxc/lxc-create + src/lxc/lxc-clone src/lxc/lxc-destroy ]) === modified file 'lxc.spec' --- lxc.spec2011-03-10 07:25:34 + +++ lxc.spec2011-03-30 15:36:58 + @@ -78,6 +78,7 @@ %{_bindir}/* %attr(4111,root,root) %{_bindir}/lxc-attach %attr(4111,root,root) %{_bindir}/lxc-create +%attr(4111,root,root) %{_bindir}/lxc-clone %attr(4111,root,root) %{_bindir}/lxc-start %attr(4111,root,root) %{_bindir}/lxc-netstat %attr(4111,root,root) %{_bindir}/lxc-unshare === modified file 'src/lxc/Makefile.am' --- src/lxc/Makefile.am 2011-03-10 07:25:34 + +++ src/lxc/Makefile.am 2011-03-30 15:36:58 + @@ -72,6 +72,7 @@ lxc-setuid \ lxc-version \ lxc-create \ + lxc-clone \ lxc-destroy bin_PROGRAMS = \ === modified file 'src/lxc/Makefile.in' --- src/lxc/Makefile.in 2011-03-10 07:25:34 + +++ src/lxc/Makefile.in 2011-03-30 15:36:58 + @@ -49,7 +49,8 @@