在 Ubuntu 系統中,ulimit
命令用于控制 shell 進程及其子進程可以打開的文件描述符數量。要設置打開文件數的限制,可以按照以下步驟操作:
查看當前限制:
ulimit -n
臨時增加限制: 假設你想將打開文件數的限制增加到 65536,可以使用以下命令:
ulimit -n 65536
這個設置在當前終端會話結束后會失效。
要永久設置打開文件數的限制,需要修改系統配置文件。
編輯 /etc/security/limits.conf
文件:
sudo nano /etc/security/limits.conf
在文件末尾添加以下行:
* soft nofile 65536
* hard nofile 65536
這里的 *
表示所有用戶,soft
是軟限制,hard
是硬限制。你可以根據需要修改用戶名和限制值。
編輯 /etc/sysctl.conf
文件(可選,用于調整內核參數):
sudo nano /etc/sysctl.conf
添加以下行:
fs.file-max = 100000
這里的 100000
是系統范圍內允許的最大文件描述符數量。你可以根據需要調整這個值。
應用 sysctl
配置:
sudo sysctl -p
驗證用戶級別的限制: 重新登錄到一個新的終端會話,然后使用以下命令驗證限制是否生效:
ulimit -n
驗證系統級別的限制: 使用以下命令查看系統級別的最大文件描述符數量:
cat /proc/sys/fs/file-max
通過以上步驟,你可以成功設置 Ubuntu 系統中打開文件數的限制。