If you start a container with lxc-execute and you do specify a configuration with lxc.rootfs set, then lxc attempts to open a console for you and in so doing messes up the termio on /dev/tty. This leads to the characters being typed not being echoed, and the error message "lxc-execute: Input/output error - failed to read". For example:
lxc-execute -s lxc.rootfs=/ -n bashtest /bin/bash The question is, is there a valid use case for lxc-execute + specifying a rootfs? It seems like this is not really an intended use, and if not I think the following patch should be considered. There is some discussion in the bug mentioned below. --- Subject: [PATCH] ignore lxc.rootfs when using lxc-execute If lxc.rootfs is specified, lxc_create_console() will create a console for the container and set its termio -echo expecting console_handler() to write the characters. In the lxc-execute case, these writes fail with EPERM (see https://bugs.launchpad.net/ubuntu/+source/lxc/+bug/986956). This change implements the last part of (2) from comment 6 of that bug, namely to ignore the lxc.rootfs option when using lxc-execute. This makes it so that lxc will not attempt to open the console, and thus not change the termio of /dev/tty. Signed-off-by: Dwight Engen <dwight.en...@oracle.com> --- src/lxc/execute.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/lxc/execute.c b/src/lxc/execute.c index 99800d0..d84baae 100644 --- a/src/lxc/execute.c +++ b/src/lxc/execute.c @@ -27,6 +27,7 @@ #include <unistd.h> #include <stdlib.h> +#include "conf.h" #include "log.h" #include "start.h" @@ -137,5 +138,11 @@ int lxc_execute(const char *name, char *const argv[], int quiet, if (lxc_check_inherited(conf, -1)) return -1; + if (conf->rootfs.path) { + WARN("rootfs not valid with lxc_execute, ignoring"); + free(conf->rootfs.path); + conf->rootfs.path = NULL; + } + return __lxc_start(name, conf, &execute_start_ops, &args); } -- 1.7.12.3 ------------------------------------------------------------------------------ LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d _______________________________________________ Lxc-devel mailing list Lxc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-devel