Sự khác biệt giữa ulimit, launchctl, sysctl?


10

Khi quản lý các giới hạn của hệ điều hành (cụ thể là OSX), sự khác biệt và chồng chéo giữa chức năng và lịch sử của ba công cụ này là gì:

  1. ulimit
  2. launchctl, launchd
  3. sysctl

Tôi thấy khó hiểu khi điều chỉnh các quy trình tối đa và mở các giới hạn tệp trên OSX.

Có vấn đề gì không nếu một số quy trình được khởi chạy qua thiết bị đầu cuối so với GUI?

Có thể liên quan:

Câu trả lời:


3

1. lo lắng

Đây là một lệnh dựng sẵn của shell của bạn (bash / ash / zsh, v.v.). Nó tạm thời đặt giới hạn quá trình cho shell hiện tại. Đây không phải là macOS cụ thể.

2. hệ thống

Hầu hết các hệ thống giống như unix (Linux / * BSD / macOS) đều đặt cài đặt giới hạn / kernel toàn cầu thông qua tệp cấu hình sysctllệnh /etc/sysctl.conf.

Có vẻ như macOS không còn vinh dự sysctl.confkhi khởi động nữa . Vì vậy, trên macOS, có vẻ như sysctlchỉ có thể sử dụng để tạm thời đặt giới hạn toàn cầu.

3. launchd / launchctl

Để thiết lập giới hạn toàn cầu một cách bền bỉ, hãy sử dụng launchctltrên macOS.


1
Văn bản trong "launchd" không thực sự nói về launchd (hoặc launchctl, mà OP đã hỏi về).
Nick Chammas

Đã chỉnh sửa câu trả lời để sửa điểm của @NickChammas.
đến
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.