ulimit 是一個用于控制 shell 進程及其子進程資源使用的命令行工具。它允許你設置各種資源限制,例如文件描述符數量、進程數、CPU 時間等。要使用 ulimit 管理進程組,請遵循以下步驟:
打開終端。
使用 ulimit 命令設置所需的資源限制。例如,要為進程組設置最大進程數,請使用以下命令:
ulimit -u <number_of_processes>
將 <number_of_processes> 替換為你希望允許的最大進程數。
要將資源限制應用于特定進程組,請首先創建一個新的進程組??梢允褂?setpgid 系統調用或 newgrp 命令來實現這一點。例如,要創建一個名為 “my_group” 的新進程組,請執行以下命令:
newgrp my_group
這將創建一個名為 “my_group” 的新進程組,并將其設置為當前進程組。
現在,你可以使用 ulimit 命令為剛剛創建的進程組設置資源限制。例如,要將最大進程數設置為 50,請執行以下命令:
ulimit -u 50
要驗證資源限制已成功應用于進程組,請使用 ps 命令查看進程組中的進程。例如,要查看名為 “my_group” 的進程組中的進程,請執行以下命令:
ps -j -o pgid,cmd -C <your_command>
將 <your_command> 替換為你在步驟 3 中使用的命令。
請注意,ulimit 設置的資源限制僅適用于當前 shell 會話。要使這些設置在系統重啟后仍然生效,請將相應的 ulimit 命令添加到 shell 配置文件(如 ~/.bashrc 或 ~/.bash_profile)中。