我们的一个用户已经在他们的主目录中编译他们自己的程序。 通常我们不介意,但这个特定的程序有一个内存泄漏,并进入交换。 我们已经多次告诉这个用户不要运行该程序,但她不会听。
有阻止某个程序运行的简单方法吗?
两种方式:
limits.conf
为该用户的每个进程分配最大分配的内存 cgroup
,以限制其总内存使用量 更多细节在这里: https : //unix.stackexchange.com/questions/34334/how-to-create-a-user-with-limited-ram-usage
你正试图通过技术手段来解决人类的问题。 这个人故意违反政策。 适当的回应是(正如上面明智地提到的@ceejayoz)摆脱那个用户,或者至less,删除有问题的系统的访问权限,以及任何其他类似的权限。
如果你在一个单独的分区上有主目录,你可以用noexec
挂载这个分区。 虽然我也同意只是禁止用户。