Làm cách nào để thay đổi giá trị ulimit mặc định trong Mac OS X 10.6?


42

Mac OS X giới hạn số lượng tiến trình ở 266 và mở tệp thành 256. Đôi khi, đây là sự cố; 256 tệp đang mở và 266 quy trình không nhiều như vậy.

Làm cách nào để thay đổi giá trị ulimit mặc định trong Mac OS X 10.6.7?

(Hy vọng không có sự khác biệt giữa 10.6.7 và các bản phát hành Snow Leopard khác.)

Câu hỏi liên quan trong serverfault. Thật không may, câu trả lời là dành cho Mac OS X 10.5 và nó không hoạt động trong 10.6.


Để thay đổi nhanh chóng : ulimit -n 1024. Nhưng nó không thay đổi mặc định.
Cœur

Câu trả lời:


47

launchctl có quyền kiểm soát đó ngay bây giờ.

Bạn có thể làm một

launchctl limit maxfiles 2048 2048 

để đặt giới hạn mềm và cứng cho các tệp tối đa mở. Để biết thêm thông tin, hãy xem phần 'giới hạn' của:

http://developer.apple.com


1
Điều này vẫn hoạt động trong OS X 10.9
Olli

Tôi đang chạy 10.9.4 và khi tôi launchctl limit maxfiles 2048 2048mongotôi vẫn gặp soft rlimits too lowlỗi. Bất cứ điều gì khác tôi có thể thử?
Ryan

sau khi thay đổi giới hạn với sudo launchctl, v.v., sau đó đóng / mở thiết bị đầu cuối và đặt ulimit -n 2048. lần này nó sẽ hoạt động. kiểm tra nó với ulimit -n
chrismarx

4
Sau khi thực hiện 'launchctl giới hạn maxfiles 2048 2048' Tôi đã nhận được 'quá nhiều tệp đang mở' trên máy Mac của mình khi tôi cố gắng làm bất cứ điều gì trong trình bao và các ứng dụng Cacao hiển thị các menu trống. Hệ thống đã được nướng khá nhiều. Một khởi động lại rất may đã sửa nó.
Graham Wheeler

3
Không chạy lệnh này trên macOS Sierra. Lệnh chính xác sẽ là launchctl limit maxfiles 2048 unlimitedmặc dù tôi sẽ đề nghị xem các cài đặt hiện tại của bạn launchctl limit maxfilestrước khi thực hiện, nếu không bạn sẽ khóa hoàn toàn máy tính của mình.
snowe2010

8

Có một câu trả lời trên StackOverflow cho câu hỏi này. Rõ ràng ulimitlàm điều đó bây giờ.


1
Bạn có thể thay đổi giá trị bằng ulimit, nhưng nó không lưu những giá trị đó. Bài đăng được liên kết không bao gồm bất kỳ cách nào để lưu mặc định.
Olli

3
Cách khắc phục nhanh: Chỉnh sửa ~ / .bash_profile của bạn và thêm phần này vào một dòng: ulimit -n 1024 (dĩ nhiên sử dụng bất kỳ số nào bạn thích)
PapaFreud

2
@PapaFreud Điều đó chỉ được thực hiện khi bạn mở terminal / bash. Không phải tất cả các chương trình được thực hiện từ thiết bị đầu cuối.
Olli

1

FYI.

.bash_profile cập nhật không giúp tôi cho OS v10.10.3, nhưng cài đặt lại NodeJS từ 0.10.35 đến 0.12.3 đã giúp tôi và lỗi biến mất.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.