如何在CoreOS工具箱容器内运行strace?

时间:2016-12-21 21:57:37

标签: containers systemd coreos strace

我运行coreos并且需要在某个进程上运行strace。但是:

sudo systemd-nspawn \
    --directory="${machinepath}" \
    --capability=all \
    --share-system \
    ${TOOLBOX_BIND} \
    --user="${TOOLBOX_USER}" "$@"

我打开了旋转工具箱的脚本,发现了这个:

DISTRIB_RELEASE=1185.5.0

哪个是命名空间容器。它看起来像一个权限问题,但我不知道如何赋予我的容器权限以附加strace以进行处理。我的CoreOS版本:import java.util.ArrayList; import java.util.Iterator; import java.util.Random; public class TestList { public static void main(String args[]){ int N=5; //outer ArrayList ArrayList<ArrayList> bug = new ArrayList<ArrayList>(); for(int i=0 ; i<N ; i++) { //inner ArrayList ArrayList memory = new ArrayList(); bug.add(memory); } Iterator<ArrayList> outer = bug.iterator(); while(outer.hasNext()) { ArrayList memory = outer.next(); memory.add(new Random().nextInt(10)); } while(outer.hasNext()) { ArrayList memory = outer.next(); Iterator inner = memory.iterator(); System.out.println(inner.next()); } } }

感谢任何帮助

1 个答案:

答案 0 :(得分:0)

简短回答:

echo 0 > /proc/sys/kernel/yama/ptrace_scope

更长的回答here