我在 chroot 之后调用 execlp (java) 时遇到问题。
java程序安装在/usr/lib/jvm/default-java/jre/bin/java。
而且我无法在 chroot(".") 之后执行 java 程序,因为我无法达到实际的 root 和
安装java的目录。
这是我的简单代码。
int pid = fork();
if(pid == 0)
{
chroot(".");
execlp("java","java","test", NULL); // cant run "test" java program
}
else{
wait4(..............);
}
如果我删除 chroot,它运行良好。
问题是“java”在 /usr/lib/....... ,
如果我使用 chroot,我无法达到实际的 root 和 java。
没有同时使用chroot和java的解决方案吗?