我有点担心我可以在共享计算机中使用的资源量。有没有办法测试管理员是否有我可以使用的资源量限制?如果是,为了提出更完整的问题,我该如何设置这样的限制?
谢谢。
答案 0 :(得分:16)
对于与流程相关的限制,您可以查看/etc/security/limits.conf
(阅读文件中的评论,使用google或使用man limits.conf
获取更多信息)。正如jpalecek指出的那样,您可以使用ulimit -a
来查看(并可能修改)当前有效的所有此类限制。
您可以使用命令quota
查看磁盘配额是否生效。
答案 1 :(得分:9)
您可以尝试运行
ulimit -a
查看有效的资源限制。此外,如果允许您更改此类限制,则可以通过ulimit
命令更改它们,例如
ulimit -c unlimited
解除进程可以制作的核心文件大小的任何限制。
答案 2 :(得分:1)
在 C 级别,相关函数(实际上是 syscalls(2)...)可以是 setrlimit(2) 和 setpriority(2) 和 sched_setattr(2)。您可能希望从您的 shell 中调用它们。
另见 proc(5) - 并尝试 cat /proc/self/limits
和 sched(7)。
您可能需要使用 renice(1) 命令。
如果您运行一个不需要用户交互的持久程序(几个小时),您可以考虑使用一些batch processing。某些 Linux 系统具有 batch
or at
command。