Diferença entre ulimit, launchctl, sysctl?


10

Ao gerenciar os limites do sistema operacional (especificamente OSX), qual é a diferença e a sobreposição entre a funcionalidade e o histórico dessas três ferramentas:

  1. ulimit
  2. launchctl, launchd
  3. sysctl

Achei confuso ajustar o máximo de processos e abrir limites de arquivos no OSX.

Importa se alguns processos são iniciados pelo terminal versus a GUI?

Possivelmente relacionado:

Respostas:


3

1. ulimit

Este é um comando interno do seu shell (bash / ash / zsh etc). Ele define temporariamente os limites do processo para o shell atual. A propósito, isso não é específico do macOS.

2. sysctl

A maioria dos sistemas do tipo unix (Linux / * BSD / macOS) define configurações globais de limite / kernel através do arquivo de configuração de sysctlcomando /etc/sysctl.conf.

Parece que o macOS não honra mais sysctl.confna inicialização . Portanto, no macOS, parece que sysctlé meramente utilizável para definir temporariamente os limites globais.

3. launchd / launchctl

Para definir limites globais de maneira persistente, use launchctlno macOS.


1
O texto em "launchd" não fala sobre o launchd (ou o launchctl, sobre o qual o OP perguntou).
Nick Chammas

Editou a resposta para corrigir o ponto de @NickChammas.
até
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.