<div dir="ltr"><div><div>Thank you for your answer Stéphane. <br></div>My distribution is Debian Wheezy (7.7) with kernel 3.2.0-4-amd64<br><br></div><div>In debian wheezy, the default version of lxc in the repositories is 0.8 that's why I compiled the sources. Strangely, I think I have never tried to install any version above the 1.0.6 so I cannot explain the presence of the <span style="font-family:courier new,monospace">liblxc.so.1.1.0.alpha1</span> in the system.<br>Can you tell me which script or process recreates the symbolic link to this library at system startup?<br><br></div><div>And how can I force python to load the 1.0.6 version and forget about the 1.1?<br><br></div><div>Thank you<br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On 27 October 2014 17:45, Stéphane Graber <span dir="ltr"><<a href="mailto:stgraber@ubuntu.com" target="_blank">stgraber@ubuntu.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On Mon, Oct 27, 2014 at 05:08:29PM +0100, Yannick Barbeaux wrote:<br>
> Hi everyone,<br>
><br>
> my first post in the LXC world!<br>
> I have been using LXC 1.0.3 on debian wheezy for a few months now and<br>
> everything worked fine, except that the kern.log (and thus syslog too) on<br>
> "Dom0" was garbled as soon as I started any container :<br>
><br>
> example:<br>
> Oct 27 16:19:51 myserver kernel: rl(NU)I=r.0<br>
> U=MC0:05:00:1f:ac:1e:60:0SC0000DT24001LN3 O=x0PE=x0TL1I= FPOO2<br>
> Oct 27 16:19:53 myserver kernel: 91845] rpe yfrwl IPT Nb012OT<br>
> A=10:e0:00:e5:86:88:80 R=... S=2... E=2TS00 RC0C T= D0D RT=  2.233 rp  ra<br>
> NTIb.4U C10e001ece20480R0. =..E2S0R0 =DDR=4>[  922.837874]  dropped by<br>
> firewall (INPUT) IN=br0105 OU=MC0:05:00:16:09:99:f0:0SC0000DT=2... E=2TS00<br>
> RC0C T= D0D RT= ==x0PE=x0TL1I= FPOO2<br>
><br>
> it seems that various processes write at the same time in the logs and thus<br>
> it is totally messy.<br>
><br>
> I thought that upgrading to LXC 1.0.6 could solve that issue. I downloaded<br>
> the sources and compiled the new version with python enabled.<br>
><br>
> The real problems started with that new version: after rebooting, the<br>
> containers would simply not start (lxc-start -d -n p1 does not do anything,<br>
> nothing in the logs either). After investigations, I found out that the<br>
> link to the liblxc pointed to the liblxc.so.1.1.0.alpha1.<br>
> After deleting the symbolic link and recreating it to point to<br>
> liblxc.so.1.0.6, I was able to launch the containers successfully but<br>
> unfortunately, one of the command I used the most, lxc-ls --fancy was<br>
> broken (Segmentation fault). Same issue for the lxc-autostart command.<br>
><br>
> Furthermore, after each reboot, the link to the alpha1 version of the lib<br>
> is automatically recreated so before launching the containers, I have to<br>
> execute those commands to recreate the correct link:<br>
> rm /usr/local/lib/liblxc.so.1<br>
> ln -s /usr/local/lib/liblxc.so.1.0.6 /usr/local/lib/liblxc.so.1<br>
><br>
> And guess what, with the v1.0.6, my kern.log and syslog are still garbled<br>
> so the upgrade was definitely not efficient in my case.<br>
><br>
> To sum up, since the upgrade, I face the following issues:<br>
> - garbled logs on "Dom0" (same issue as with v1.0.3)<br>
> - link to the liblxc.so.1.1.0alpha is recreated at each system startup (and<br>
> implies that I cannot launch my containers)<br>
> - lxc-ls --fancy and lxc-autostart not working anymore<br>
><br>
> Any help on this would be really appreciated.<br>
><br>
> Thanks<br>
><br>
> Yannick<br>
<br>
</div></div>The mixed up logs are not related to LXC but to the way kernel logging<br>
works. There's unfortunately nothing LXC will ever be able to do about<br>
this, instead the fix needs to happen in kernel land.<br>
<br>
What distribution are you running on?<br>
If you're running on Ubuntu, you can use ppa:ubuntu-lxc/stable which<br>
contains 1.0.6 built for all versions of Ubuntu. Note that if you're<br>
running Ubuntu 14.10, which contains LXC 1.1.0.alpha2, you will need to<br>
manually pin the 1.0.6 packages so that your system doesn't keep<br>
upgrading to 1.1.<br>
<br>
Mixing 1.1.0 and 1.0.6 can indeed lead to the kind of problem you're<br>
reporting. Especially as python typically doesn't look for extension<br>
modules in /usr/local so it's very likely that python loaded the 1.1<br>
version of the C extension module and then tried to interface with<br>
liblxc 1.0.6 which caused the segfault.<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Stéphane Graber<br>
Ubuntu developer<br>
<a href="http://www.ubuntu.com" target="_blank">http://www.ubuntu.com</a><br>
</font></span><br>_______________________________________________<br>
lxc-users mailing list<br>
<a href="mailto:lxc-users@lists.linuxcontainers.org">lxc-users@lists.linuxcontainers.org</a><br>
<a href="http://lists.linuxcontainers.org/listinfo/lxc-users" target="_blank">http://lists.linuxcontainers.org/listinfo/lxc-users</a><br></blockquote></div><br></div>