在Ubuntu系統中,可以使用ulimit
命令來設置進程的資源限制。ulimit
命令可以限制單個用戶或shell會話中的進程資源使用。以下是一些常用的ulimit
選項和示例:
ulimit -a
ulimit -n <number_of_file_descriptors>
ulimit -u <max_number_of_processes>
ulimit -m <max_memory_usage_in_kb>
ulimit -t <max_cpu_time_in_seconds>
ulimit -s <max_stack_size_in_kb>
要永久設置資源限制,可以編輯/etc/security/limits.conf
文件。在此文件中,可以為特定用戶或用戶組設置資源限制。例如,要為名為username
的用戶設置最大進程數和最大文件描述符數量,可以在limits.conf
文件中添加以下行:
username soft nproc <max_number_of_processes>
username hard nproc <max_number_of_processes>
username soft nofile <max_number_of_file_descriptors>
username hard nofile <max_number_of_file_descriptors>
保存文件后,新的資源限制將在下次用戶登錄時生效。
請注意,ulimit
命令和/etc/security/limits.conf
文件的設置僅適用于shell會話和由該用戶啟動的進程。對于系統范圍內的資源限制,可以編輯/etc/sysctl.conf
文件并使用sysctl
命令進行調整。