Tập tin lệnh / cấu hình nào kiểm soát giới hạn tệp mở trên OS X? Có một lệnh khác cho OS X 10.5 / 10.6 / 10.7 không? Các tùy chọn tôi khám phá dưới đây là ulimit
, sysctl
vàlaunchctl
"Quá nhiều tệp đang mở" rõ ràng là một lỗi phổ biến trên Leopard, có lẽ các phiên bản khác của OS X:
Có nhiều cách (liên quan?) Để xem giới hạn tệp đang mở:
$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
max locked memory (kbytes, -l) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 2048
pipe size (512 bytes, -p) 1
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 512
virtual memory (kbytes, -v) unlimited
$ launchctl limit
cpu unlimited unlimited
filesize unlimited unlimited
data unlimited unlimited
stack 8388608 67104768
core 0 unlimited
rss unlimited unlimited
memlock unlimited unlimited
maxproc 1024 2048
maxfiles 2048 4096
$ sysctl -a | grep files
kern.maxfiles = 32768
kern.maxfilesperproc = 16384
kern.maxfiles: 32768
kern.maxfilesperproc: 16384
kern.num_files: 2049
Nó đã được tuyên bố trong một số bài viết ở trên rằng chúng có thể được sửa đổi bằng các lệnh sau:
sudo launchctl limit maxfiles 16384 32768
sudo ulimit -n 32768
sudo sysctl -w kern.maxfilesperproc=16384
sudo sysctl -w kern.maxfiles=32768
Tuy nhiên, trong số các lệnh trên, chỉ sysctl
lệnh có bất kỳ tác dụng rõ ràng (ví dụ ulimit -n
và launchctl limit
cho thấy không có sự thay đổi sau khi lệnh trên đã được nhập vào, trong khi sysctl -a
không hiển thị những thay đổi yêu cầu).
Các vị trí tương ứng để thay đổi các tham số này cho HĐH là:
/etc/sysctl.conf
/etc/launchd.conf
Tôi cũng phát hiện ra một câu trả lời chỉ đọc ulimit
phần vỏ hiện tại.
Làm thế nào tôi có thể điều chỉnh lên các file tối đa / tối đa mở file giới hạn về hệ điều hành MacOS?