zsh processa 95% da minha CPU

5

Ao abrir meu monitor de atividades, eu tenho um processo zsh tomando toda a minha CPU. Isso é normal? Eu tenho iTerm e oh-my-zsh instalado, mas não espero que seja um comportamento normal.

Alguma ideia?

    
por Martin Delille 27.08.2014 / 15:42

2 respostas

7

Também encontro muito esse problema. Sempre envolve installd e, o mais importante, com installd instalando / atualizando aplicativos da Apple, como o iWork (o IIRC é exclusivo do iWork; pelo menos eu ainda não encontrei uma ocorrência com um aplicativo de terceiros).

Eu acredito que não tem nada a ver com iTerm2 ou oh-my-zsh (embora eu use ambos também). O que eu acredito é que este é um problema de compatibilidade de shell - o script de instalação da Apple chama seu shell padrão, provavelmente

$SHELL -c command...

Ele foi testado em bash , mas não em zsh , portanto, quando zsh é chamado dessa maneira, surgem problemas sutis de compatibilidade de shell. Quando você inspeciona o processo ofensivo (Activity Monitor infelizmente, AFAIK, não mostra todos os comandos; eu uso htop para isso, e você pode usar ps ou qualquer outro), você verá coisas como

zsh -c defaults delete com.apple.helpd com.apple.helpd.sdmMapsCreated

qual apoia meu palpite (bem, meu palpite foi realmente derivado dessas observações, para ser preciso). * Portanto, a solução é simplesmente executar o comando você mesmo, neste caso

defaults delete com.apple.helpd com.apple.helpd.sdmMapsCreated

Então você mata os processos ofensivos. installd automaticamente se move (provavelmente para o próximo processo preso como este). Após várias rodadas de moagem, você encontrará a instalação concluída com sucesso. Eu sei que isso é irritante, mas esta é a única maneira que encontrei para trabalhar (de forma confiável).

* Na verdade, está além de mim como zsh -c fica preso em coisas como defaults delete . Não tenho certeza se é com o meu ambiente. (Eu coloquei GNU coreutils e similares na frente do BSD no meu PATH, mas tenho certeza que nunca mexi com default .) Talvez default use internamente utilitários BSD? Mas, novamente, eu posso executar o mesmo comando no meu terminal com zsh, interativamente ou não interativamente, muito bem. Isso é realmente desconcertante (a solução acima não é afetada). Qualquer entrada é bem vinda.

    
por 16.11.2014 / 10:38
0

Eu tenho regularmente o mesmo problema e está sempre relacionado ao processo de instalação, atualizando um aplicativo da AppStore. Matar primeiro o installd e depois o processo do zsh ajuda (mas desativa a funcionalidade da AppStore até que ela seja reiniciada).

    
por 01.09.2014 / 16:53

Tags