Diagnosticar problemas de carga do servidor Linux com um script simples

Aug 31, 2025
Manutenção e Otimização
CONTEÚDO NÃO CHEGADO

Se você já é administrador há algum tempo, certamente já descobriu situações em que um servidor aumenta o uso da CPU ou a utilização da memória e / ou níveis de carga. Executar `top` nem sempre dará a você a resposta, também. Então, como você encontra esses processos sorrateiros que estão consumindo os recursos do seu sistema para poder matá-los?

O script a seguir pode ajudar. Ele foi escrito para um servidor web, portanto, possui algumas partes que procuram especificamente por processos httpd e algumas partes que lidam com MySQL. Dependendo da implantação do servidor, basta comentar / excluir essas seções e adicionar outras. Deve ser usado como ponto de partida.

Os pré-requisitos para esta versão do script são algum freeware lançado sob a GNU General Public License chamado mytop (disponível em http://jeremy.zawodny.com/mysql/mytop/ ), que é uma ferramenta fantástica para verificar o desempenho do MySQL. Está ficando velho, mas ainda funciona muito bem para nossos propósitos aqui.
Além disso, eu uso o mutt como o remetente - você pode querer alterar o script para simplesmente usar o utilitário `mail` embutido no Linux. Eu o executo via cron a cada hora; ajuste como achar melhor. Ah - e este script precisa ser executado como root, pois ele lê de algumas áreas protegidas do servidor.

Então, vamos começar, vamos?

Primeiro, defina suas variáveis ​​de script:

#! / Bin / Bash
#
# Script para verificar os níveis médios de carga do sistema para tentar determinar
# quais processos estão levando isso muito alto ...
#
# 07Jul2010 tjones
#
# definir ambiente
dt = `data +% d% b% Y-% X`
# Obviamente, mude os seguintes diretórios para onde seus arquivos de log realmente são mantidos
tmpfile = "/ tmp / checkSystemLoad.tmp"
logfile = "/ tmp / checkSystemLoad.log"
msgLog = "/ var / log / messages"
mysql Log = "/ var / log / mysqld.log"
# o primeiro mailstop é o e-mail padrão para relatórios. O segundo é para o telefone celular (com um relatório reduzido)
mailstop = "[email protected]"
mailstop1="[email protected]"
máquina = `hostname`
# Os três seguintes são para uso mytop - use um usuário db que tenha direitos decentes
dbusr = "nome de usuário"
dbpw = "senha"
db = "seu nome de banco de dados"
# A seguir está o nível de carga a ser verificado - 10 é realmente alto, então você pode querer diminuí-lo.
levelToCheck = 10

Em seguida, verifique seu nível de carga para ver se o script deve continuar:

# Defina as variáveis ​​do sistema:
loadLevel = `cat / proc / loadavg | awk '{print $1}'`
loadLevel = $ (printf "% 0.f" $ loadLevel)

# se o nível de carregamento for maior do que você deseja, inicie o processo de script. Caso contrário, saia 0

se [ $loadLevel -gt $levelToCheck ]; então
echo ""> $ tmpfile
echo "***************************************" >> $ tmpfile
echo "Data: $ dt" >> $ tmpfile
echo "Verificar carregamento e processos do sistema" >> $ tmpfile
echo "***************************************" >> $ tmpfile

LINUX Average Load On Server, Uptime Command

Linux System Load History | Tech Arkit | Shell Script


Manutenção e Otimização - Artigos mais populares

Como evitar cores desbotadas ao usar HDMI em seu PC

Manutenção e Otimização Jun 11, 2025

As cores pretas podem parecer desbotadas e cinza se você conectar seu PC ao monitor por meio de um cabo HDMI, e não é culpa do monitor. Isso se deve à maneira como sua placa gr�..


Como melhorar sua experiência no Amazon Echo, treinando-o para sua voz

Manutenção e Otimização Jun 20, 2025

Como todos os assistentes de voz, Alexa não é perfeita para entender tudo o que dizemos. Se você sentir que Alexa está perdendo alguns comandos, pode ser hora de um pequeno trei..


Você pode conectar aquecedores espaciais em tomadas inteligentes?

Manutenção e Otimização Oct 20, 2025

Aquecedores de ambiente são ótimos para aquecer ambientes em sua casa, mas também podem ser perigosos se usados ​​de maneira inadequada, o que pode fazer você se perguntando..


Tudo o que você precisa saber sobre como melhorar a vida útil da bateria do seu iPhone

Manutenção e Otimização Oct 12, 2025

Os telefones estão cada vez mais rápidos, mas a vida útil da bateria não melhorou muito. Os iPhones modernos ainda lutam para sobreviver a um único dia se você os estiver usan..


Como ver quais comerciantes aceitam o Apple Pay

Manutenção e Otimização Jul 6, 2025

Se você já saiu correndo de casa com seu iPhone, mas deixou sua carteira ou bolsa para trás, sabe como é chato se virar e voltar para buscá-lo. Se você usa o Apple Pay, não p..


Como desativar os anúncios de pesquisa da Amazon no Unity Dash do Ubuntu

Manutenção e Otimização Oct 19, 2025

Atualize para o Ubuntu 12.10 (Quantal Quetzal) e você terá uma surpresa - o Ubuntu agora mostra anúncios de produtos da Amazon quando você pesquisa em seu painel. Também há um..


Use apelidos para abrir rapidamente um conjunto de sites favoritos no Opera

Manutenção e Otimização Jul 25, 2025

CONTEÚDO NÃO CHEGADO Se você tiver um conjunto específico de sites que visita com frequência, poderá facilitar a abertura de todos esses sites de uma vez usando uma pasta de..


Pule “Próximos Links” com o Bookmarklet PageZipper

Manutenção e Otimização Mar 23, 2026

CONTEÚDO NÃO CHEGADO Não importa qual navegador você use, mais cedo ou mais tarde, você encontrará um site com um número infinito de “próximos links” usados ​​com o único p..


Categorias