ulimit 是一个用于控制 shell 启动的进程能够使用的系统资源的命令。你可以使用 ulimit 命令来限制各种资源,如文件大小、进程数、CPU 时间等。以下是一些常见的 ulimit 用法示例:
ulimit -f <size_in_blocks> 例如,限制文件大小为 10MB:
ulimit -f 10240 ulimit -u <number_of_processes> 例如,限制用户可以同时运行的进程数为 100:
ulimit -u 100 ulimit -t <seconds> 例如,限制进程的CPU时间为 3600秒(1小时):
ulimit -t 3600 ulimit -v <size_in_kilobytes> 例如,限制进程的内存使用为 512MB:
ulimit -v 524288 ulimit -n <number_of_open_files> 例如,限制打开文件描述符的数量为 2048:
ulimit -n 2048 上述命令设置的资源限制只在当前 shell 会话中有效。如果你希望永久设置这些限制,可以将相应的 ulimit 命令添加到用户的 shell 配置文件中,如 .bashrc 或 .bash_profile。
例如,在 .bashrc 文件中添加以下行:
ulimit -f 10240 ulimit -u 100 ulimit -t 3600 ulimit -v 524288 ulimit -n 2048 你可以使用 ulimit -a 命令来查看当前 shell 会话中的所有资源限制:
ulimit -a ulimit 设置的限制是针对单个用户的,如果你需要系统范围的资源限制,可以使用 pam_limits.so 模块或其他系统配置文件(如 /etc/security/limits.conf)。通过这些方法,你可以有效地控制进程的资源使用,防止系统资源被过度消耗。