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

Eu achei confuso ajustar os limites máximos de processos e arquivos abertos no OSX.

Importa se alguns processos são lançados através do terminal versus a GUI?

Possivelmente relacionado:

por Eric 24.04.2013 / 01:13

1 resposta

3

1. ulimit

Este é um comando interno do seu shell (bash / ash / zsh etc). temporariamente define os limites do processo para o shell atual. Isso não é específico do MacOS.

2. sysctl

A maioria dos sistemas unix-like (Linux / * BSD / macOS) definem configurações globais de limite / kernel através do arquivo sysctl command /etc/sysctl.conf config.

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

3. launchd / launchctl

Para definir limites globais de maneira persistente, use launchctl no macOS.

    
por 03.01.2016 / 21:41