启动无法触摸现有文件的应用程序

我有一个应用程序,我想在“可视化环境”开始。 我不希望这个应用程序能够写/读我的本地文件系统上的任何文件。 奖金将是能够监视这个应用程序的一切。

该应用程序是graphics如果重要。

我可以使用现有的Linux工具吗? 我可以用chroot来模拟这种行为吗?

我不想为一个应用程序运行一个完全的virtualbox,这看起来像是一个过度杀手。

谢谢,Maxim。

SELinux将允许您在受限域中启动应用程序,审计子系统将让您看到它的function。

检查lxc,Linux容器。 这是一个比chroot更好的chroot,比如Solaris容器或者BSD监狱,也可以和OpenVZ或者VServer相媲美。 基本概念是将一些系统的观点与过程隔离开来。

例如,如果隔离PID树,则进​​程启动一个新的树:将自身视为PID#1,subprocess仅查看该子树。 其他进程将“正常”PID作为整个树的一部分。

同样,你可以用更强大的chroot来分离文件,select这些进程可以获得多less内存和CPU,他们看到的是哪个networking接口(可以是“虚拟”接口,可选地路由或桥接到真实的接口)

如果你愿意,容器中的基础进程可以是init ,创build一个新的虚拟系统; 或者它可以是一个特定的应用程序,让你限制它仍然工作,没有任何可测量的开销。