ulimit 是一个用于控制 shell 进程资源使用的命令行工具。通过设置适当的限制,可以防止 Ubuntu 系统上的资源耗尽。以下是如何使用 ulimit 来限制资源的一些建议:
打开终端。
查看当前的资源限制:
ulimit -a
限制单个用户的最大进程数:
ulimit -u <number_of_processes>
将 <number_of_processes> 替换为您希望允许的最大进程数。
限制单个进程的最大文件描述符数:
ulimit -n <number_of_file_descriptors>
将 <number_of_file_descriptors> 替换为您希望允许的最大文件描述符数。
限制单个进程的最大内存使用量:
ulimit -v <number_of_memory_kilobytes>
将 <number_of_memory_kilobytes> 替换为您希望允许的最大内存使用量(以千字节为单位)。
限制单个进程的最大 CPU 时间:
ulimit -t <number_of_cpu_seconds>
将 <number_of_cpu_seconds> 替换为您希望允许的最大 CPU 时间(以秒为单位)。
限制单个进程的最大数据段大小:
ulimit -d <number_of_data_segments_kilobytes>
将 <number_of_data_segments_kilobytes> 替换为您希望允许的最大数据段大小(以千字节为单位)。
限制单个进程的最大堆栈大小:
ulimit -s <number_of_stack_kilobytes>
将 <number_of_stack_kilobytes> 替换为您希望允许的最大堆栈大小(以千字节为单位)。
限制单个进程的最大核心文件大小:
ulimit -c <number_of_core_file_kilobytes>
将 <number_of_core_file_kilobytes> 替换为您希望允许的最大核心文件大小(以千字节为单位)。
请注意,这些更改仅适用于当前 shell 会话。要使更改永久生效,您需要将相应的 ulimit 命令添加到用户的 shell 配置文件中(例如 ~/.bashrc 或 ~/.bash_profile)。