Páginas

segunda-feira, 28 de junho de 2010

Apache: No space left on device: Couldn't create accept lock

Bem Pessoal,

Abaixo vou replicar em "Português" (by Google) a solução de um site sobre o erro acima:

Apache: Não há espaço no dispositivo: Impossível criar lock aceitar

This error completely stumped me a couple of weeks ago. 
Este erro completamente perplexo me um par de semanas atrás.

Apparently someone was adjusting the Apache configuration, then they checked their syntax and attempted to restart Apache. 
Aparentemente alguém estava ajustando a configuração do Apache, então verificada a sua sintaxe e tentou reiniciar o Apache.

It went down without a problem, but it refused to start properly, and didn't bind to any ports. 
Ele desceu sem problema, mas ele se recusou a iniciar corretamente, e não ligam para as portas.

Within the Apache error logs, this message appeared over and over: 
Dentro dos logs de erros do Apache, essa mensagem apareceu mais e mais:

[emerg] (28)No space left on device: Couldn't create accept lock []

Apache is basically saying "I want to start, but I need to write some things down before I can start, and I have nowhere to write them!" 
Apache é basicamente dizendo: "Eu quero começar, mas eu preciso escrever algumas coisas para baixo antes que eu possa começar, e eu tenho nada para escrevê-los!"

If this happens to you, check these items in order: 
Se isso acontecer com você, verifique estes itens em ordem:

Passo - 1
Check your disk space 
Verifique o seu espaço em disco

This comes first because it's the easiest to check, and sometimes the quickest to fix. 
Isso vem em primeiro lugar, porque é mais fácil de verificar, e às vezes mais rápido para consertar.
If you're out of disk space, then you need to fix that problem.
Se você estiver fora do espaço de disco, então você precisa para corrigir esse problema.

Passo - 2

Review filesystem quotas 
quotas revisão do sistema de arquivos
If your filesystem uses quotas, you might be reaching a quota limit rather than a disk space limit. 
Se o seu  sistema de arquivos usa quotas, você pode estar atingindo um limite de cota, em vez de um limite de espaço em disco.
Use repquota / to review your quotas on the root partition. 
Use repquota / revisar suas cotas na partição root.
If you're at the limit, raise your quota or clear up some disk space. 
Se você está no limite, elevar sua cota ou esclarecer algum espaço em disco.
Apache logs are usually the culprit in these situations.
Logs do Apache são geralmente o culpado nestas situações.

Passo - 3

Clear out your active semaphores 
Limpar o seu semáforos ativos
Semaphores? 
Semáforos?
What the heck is a semaphore? 
Que diabos é um semáforo?
Well, it's actually an apparatus for conveying information by means of visual signals .
Bem, é realmente um aparelho para a transmissão de informações por meio de sinais visuais .
But, when it comes to programming, semaphores are used for communicating between the active processes of a certain application . 
Mas, quando se trata de programação, os semáforos são usados para comunicação entre os processos ativos de uma determinada aplicação .
In the case of Apache, they're used to communicate between the parent and child processes.
No caso do Apache, que são usados para comunicação entre os pais e os processos de criança.
If Apache can't write these things down, then it can't communicate properly with all of the processes it starts.
Se o Apache não consegue escrever essas coisas, então não pode se comunicar corretamente com todos os processos que ele inicia.
I'd assume if you're reading this article, Apache has stopped running
Eu supor se você estiver lendo este artigo, o Apache parou de funcionar.
Run this command as root:
Execute este comando como root:

# ipcs -s

If you see a list of semaphores, Apache has not cleaned up after itself, and some semaphores are stuck.
Se você ver uma lista dos semáforos, o Apache não limpou depois de si, e alguns semáforos estão presos.
Clear them out with this command:
Limpá-los com este comando:

# for i in `ipcs -s | awk '/httpd/ {print $2}'`; do (ipcrm -s $i); done

Now, in almost all cases, Apache should start properly.
Agora, em quase todos os casos, o Apache deve iniciar corretamente.
If it doesn't, you may just be completely out of available semaphores.
Se não, você pode apenas estar completamente fora de semáforos disponíveis.
You may want to increase your available semaphores, and you'll need to tickle your kernel to do so.
Você pode querer aumentar a sua semáforos disponíveis, e você precisa para agradar o seu kernel para o fazer.

Add this to /etc/sysctl.conf:
Adicione isto ao / etc / sysctl.conf:

kernel.msgmni = 1024
kernel.sem = 250 256000 32 1024


And then run sysctl -p to pick up the new changes.
E em seguida, executar sysctl -p para pegar as novas alterações.

sysctl -p

Nenhum comentário:

Postar um comentário