[lxc-users] LXC not responsive after update

Viktor Trojanovic viktor at troja.ch
Thu Jan 21 22:42:34 UTC 2016


Hi Bostjan,

Here is my strace to "lxc-ls -f". It looks the same with the other
commands, at least the last line is identical.

# strace -eopen lxc-ls -f
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/libpython3.5m.so.1.0", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/libutil.so.1", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/gconv/gconv-modules.cache", O_RDONLY) = -1 ENOENT (No
such file or directory)
open("/usr/lib/gconv/gconv-modules", O_RDONLY|O_CLOEXEC) = 3
open("/dev/urandom", O_RDONLY|O_CLOEXEC) = 3
open("/usr/bin/pyvenv.cfg", O_RDONLY)   = -1 ENOENT (No such file or directory)
open("/usr/pyvenv.cfg", O_RDONLY)       = -1 ENOENT (No such file or directory)
open("/proc/meminfo", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/encodings/__pycache__/__init__.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/codecs.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/encodings",
O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/encodings/__pycache__/aliases.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/encodings/__pycache__/utf_8.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/encodings/__pycache__/latin_1.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/io.cpython-35.pyc", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/abc.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/_weakrefset.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/site.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/os.cpython-35.pyc", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/stat.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/posixpath.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/genericpath.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/_collections_abc.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/_sitebuiltins.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/sysconfig.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/_sysconfigdata.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/site-packages",
O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/plat-linux",
O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/lib-dynload",
O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/site-packages",
O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3
open("/usr/bin/lxc-ls", O_RDONLY)       = 3
open("/usr/bin/lxc-ls", O_RDONLY)       = 3
open("/usr/bin", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/argparse.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/collections/__pycache__/__init__.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/operator.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/keyword.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/heapq.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/lib-dynload/_heapq.cpython-35m-x86_64-linux-gnu.so",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/reprlib.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/copy.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/types.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/functools.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/weakref.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/collections",
O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/collections/__pycache__/abc.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/copyreg.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/re.cpython-35.pyc", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/sre_compile.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/sre_parse.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/sre_constants.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/textwrap.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/gettext.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/locale.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/struct.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/lib-dynload/_struct.cpython-35m-x86_64-linux-gnu.so",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/json/__pycache__/__init__.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/json", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/json/__pycache__/decoder.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/json/__pycache__/scanner.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/lib-dynload/_json.cpython-35m-x86_64-linux-gnu.so",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/json/__pycache__/encoder.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/site-packages/lxc/__pycache__/__init__.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/site-packages/_lxc.cpython-35m-x86_64-linux-gnu.so",
O_RDONLY|O_CLOEXEC) = 3
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/liblxc.so.1", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/libcap.so.2", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/libseccomp.so.2", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/libcgmanager.so.0", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/libnih.so.1", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/libnih-dbus.so.1", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/libdbus-1.so.3", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/libattr.so.1", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/librt.so.1", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/libsystemd.so.0", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/libresolv.so.2", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/liblzma.so.5", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/liblz4.so.1", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/libgcrypt.so.20", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/libgpg-error.so.0", O_RDONLY|O_CLOEXEC) = 3
open("/proc/self/cgroup", O_RDONLY|O_CLOEXEC) = 3
open("/etc/lxc/lxc.conf", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such
file or directory)
open("/usr/lib/python3.5/__pycache__/subprocess.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/etc/localtime", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/signal.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/enum.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/warnings.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/lib-dynload/_posixsubprocess.cpython-35m-x86_64-linux-gnu.so",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/lib-dynload/select.cpython-35m-x86_64-linux-gnu.so",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/selectors.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/lib-dynload/math.cpython-35m-x86_64-linux-gnu.so",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/threading.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/traceback.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/linecache.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/tokenize.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/token.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/etc/lxc/lxc.conf", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such
file or directory)
open("/usr/lib/python3.5/__pycache__/shutil.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/fnmatch.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/tarfile.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/lib-dynload/grp.cpython-35m-x86_64-linux-gnu.so",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/bz2.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/_compression.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/lib-dynload/_bz2.cpython-35m-x86_64-linux-gnu.so",
O_RDONLY|O_CLOEXEC) = 3
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/libbz2.so.1.0", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/lzma.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/lib-dynload/_lzma.cpython-35m-x86_64-linux-gnu.so",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/tempfile.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/random.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/__pycache__/hashlib.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/lib-dynload/_hashlib.cpython-35m-x86_64-linux-gnu.so",
O_RDONLY|O_CLOEXEC) = 3
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/libcrypto.so.1.0.0", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/libz.so.1", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/lib-dynload/_random.cpython-35m-x86_64-linux-gnu.so",
O_RDONLY|O_CLOEXEC) = 3
open("/dev/urandom", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/python3.5/encodings/__pycache__/ascii.cpython-35.pyc",
O_RDONLY|O_CLOEXEC) = 4
open("/var/lib/lxc", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 4
open("/proc/net/unix", O_RDONLY)        = 4
open("/run/lxc/lock//var/lib/lxc/.fileserver", O_RDWR|O_CREAT, 0600) = 4
open("/var/lib/lxc/fileserver/config", O_RDONLY) = 5
open("/usr/share/lxc/config/archlinux.common.conf", O_RDONLY) = 6
open("/usr/share/lxc/config/common.conf", O_RDONLY) = 7
open("/usr/share/lxc/config/common.conf.d/",
O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 8

I can't make much of that. I see that it cannot find a few files but
in my understanding these are optional anyway.

Maybe you see something I don't?

Viktor

On Thu, Jan 21, 2016 at 6:33 PM, Bostjan Skufca <bostjan at a2o.si> wrote:
> strace command is your friend.
>
> b.
>
>
> On 21 January 2016 at 12:12, Viktor Trojanovic <viktor at troja.ch> wrote:
>>
>>
>>
>> On 20.01.2016 23:50, Fajar A. Nugraha wrote:
>>
>> On Thu, Jan 21, 2016 at 5:49 AM, Fajar A. Nugraha <list at fajar.net> wrote:
>>>
>>> On Thu, Jan 21, 2016 at 5:23 AM, Viktor Trojanovic <viktor at troja.ch>
>>> wrote:
>>>>
>>>> I just did a system upgrade on my Arch System which included updating
>>>> the kernel, systemd and lxc to the newest versions. After having done so, I
>>>> cannot interact with my Linux container any longer. The system within the
>>>> container still seems to work fine and can be contacted from outside (Samba
>>>> server) but if I try to use one of the lxc commands to query or otherwise
>>>> interact with the container (e.g. lxc-ls -f, lxc-stop, lxc-console,
>>>> lxc-attach), the command hangs until I cancel it with CTRL+C.
>>>>
>>>> I get the following message when cancelling lxc-ls -f (as root):
>>>>
>>>> ^CTraceback (most recent call list):
>>>>   File "/usr/bin/lxc-ls", line 432, in <module>
>>>>     containers = get_containers(root=True)
>>>>   File "user/bin/lxc-ls", line 261, in get_containers
>>>>     if container.controllable:
>>>> KeyboardInterrupt
>>>>
>>>> Regular lxc-ls works normal, by the way.
>>>>
>>>> I can probably just reboot the server but I still wanted to ask around
>>>> if anyone has an idea why this is happening and what I could do except
>>>> rebooting to regain control of LXC? I tried already systemctl restart lxc
>>>> but that doesn't help.
>>>>
>>>
>>>
>>> Do you have lxcfs installed? If yes, this should be a know issue. When
>>> you restart lxcfs, all existing running containers that use it will be
>>> unable to access lxcfs-provided resources. AFAIK restarting lxc service does
>>> restart running containers.
>>>
>>
>> That should be: AFAIK restarting lxc service does NOT restart running
>> containers.
>>
>>
>>> Try killing one of those containers (lxc-stop -k -n ...), start it, and
>>> then test again. If it works, do the same for other containers.
>>>
>>> --
>>> Fajar
>>
>>
>> Hi Fajar,
>>
>> I'm not using lxcfs, just regular directory based containers.
>>
>> I cannot do anything with the containers.
>>
>> lxc-stop -k
>> lxc-ls -f
>> lxc-attach
>> lxc-console
>> systemctl stop lxc (or restart lxc)
>>
>> All these commands hang forever, I have to interrupt with CTRL+C and no
>> output is written to the logs. But the container system keeps working fine,
>> so does the host system.
>>
>> Viktor
>>
>>
>> _______________________________________________
>> lxc-users mailing list
>> lxc-users at lists.linuxcontainers.org
>> http://lists.linuxcontainers.org/listinfo/lxc-users
>
>
>
> _______________________________________________
> lxc-users mailing list
> lxc-users at lists.linuxcontainers.org
> http://lists.linuxcontainers.org/listinfo/lxc-users


More information about the lxc-users mailing list