lxc-attach无法input命名空间 – EC2实例

出于某种原因,我无法使用Lxc-attach仅在EC2实例上input泊坞窗容器。 这适用于本地计算机和数字海洋(KVM)云,但不适用于Amazon EC2 xen-paravirtualized Ubuntu12.04实例。 这里是步骤/错误:

root@ip-172-31-46-202:~/scalar/project/docker# lxc-ls 4074ebf985cfe09b2880a9eabbc7ad3e59283f425f64cfaa72f59f1f23661d18 root@ip-172-31-46-202:~/scalar/project/docker# lxc-attach -n 4074ebf985cfe09b2880a9eabbc7ad3e59283f425f64cfaa72f59f1f23661d18 lxc-attach: No such file or directory - failed to open '/proc/19731/ns/pid' lxc-attach: failed to enter the namespace 

有谁知道是否有办法解决这个问题? 这里是我的docker版本的详细信息:

 Client version: 0.7.6 Go version (client): go1.2 Git commit (client): bc3b2ec Server version: 0.7.6 Git commit (server): bc3b2ec Go version (server): go1.2 Last stable version: 0.7.6 

也:

 lxc version: 0.7.5 

你的内核版本是什么?

lxc-attach需要在本地12.04内核(3.5)中不存在的function。 您需要至less3.8个IIRC在backport中可用。

正如Creac所说,内核的版本不够高。 (如果我尝试重新部署AWS ubuntu镜像,它仍然使用内核3.2)

要解决这个问题,我运行以下命令来获得3.8:

 sudo apt-get install linux-image-generic-lts-raring linux-headers-generic-lts-raring 

或者你可以运行下面的命令获得3.5

 sudo apt-get install linux-image-generic-lts-quantal linux-headers-generic-lts-quantal 

请注意,这些命令是Ubuntu特有的(按照这个问题),将安装“通用”内核而不是“虚拟”内核,但应该工作。 [资源]

请注意,我试图用这些额外的信息更新Creac的原始答案,但编辑被拒绝,所以我觉得有必要创build一个新的答案供他人使用,如果他们想。

我发现命令的来源