2
10 Modelos de Shell Script
Essenciais para Administradores de
Sistemas
Elimine Tarefas Repetitivas, Simplifique Backups e Tenha
Controle Total do Seu Sistema
Sobre o Autor
Introdução
1. Script de Backup Completo
2. Script de Backup Incremental
3. Monitoramento de Uso de Disco
4. Monitoramento de Serviços
5. Limpeza de Logs Antigos
6. Atualização do Sistema
7. Verificação de Integridade de Arquivos
8. Monitoramento de Recursos do Sistema
9. Notificação de Erros no Sistema
10. Automação de Tarefas Cron
Conclusão
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
3
Sobre o Autor
Olá, tudo bem? Meu nome é Pedro Delfino e sou o fundador do E-tinet e do
Profissionais Linux. Se você já se perguntou:
● “É realmente possível aprender LINUX de forma profissional?”
● “Posso me tornar uma referência no meu mercado utilizando LINUX?”
● “Será que consigo utilizar o conhecimento de LINUX como minha atividade
principal?”
Então você está no lugar certo.
Como posso ajudar você a dominar o Linux
Existem muitos sites que ensinam LINUX, mas o excesso de informação pode ser
avassalador. Meu objetivo é simplificar isso para você.
Minha História
Cresci em um lar simples, com uma paixão por carros herdada do meu pai. Quando
minha irmã trouxe uma apostila de informática, minha jornada com tecnologia
começou. Formei-me em contabilidade, mas logo me apaixonei pelo LINUX e
migrei para a área de TI.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
5
Introdução
Bem-vindo ao que pode ser o guia mais valioso que você já leu como administrador
de sistemas!
Está cansado de perder tempo com tarefas repetitivas e manuais? Quer evitar
aqueles erros humanos que sempre parecem aparecer nos piores momentos? Então
você está no lugar certo.
Neste eBook, você vai encontrar 10 scripts prontos para usar que vão revolucionar
sua rotina. Eles são como atalhos para o sucesso, economizando seu tempo e
garantindo que tudo funcione perfeitamente. E para facilitar ainda mais o
entendimento, vamos usar metáforas para exemplificar a utilização de cada script,
tornando tudo mais intuitivo.
Cada script vem com uma explicação linha a linha, para que você saiba exatamente
como eles funcionam e como aproveitá-los ao máximo.
Vamos direto ao ponto. É hora de simplificar, automatizar e dominar suas tarefas
diárias. Vamos começar!
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
6
1. Script de Backup Completo
Imagine que você é um administrador de sistemas, e seu trabalho é como ser o
guardião de um castelo medieval.
Você tem que proteger seus tesouros - dados cruciais e configurações - de invasores,
incêndios e outras calamidades.
Agora, imagine que todo dia, ao final do dia, você faz uma cópia mágica de tudo o
que é importante no castelo e guarda em um cofre indestrutível.
Esse cofre é o seu backup completo do sistema, e o script que você está prestes a
conhecer é a chave mágica que torna isso possível.
Onde este script se encaixa no seu dia a dia?
Vamos lá.
Você está no escritório, uma pilha de tickets de suporte está na sua frente.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
7
E a última coisa que você precisa é perder tempo tentando lembrar quais arquivos
precisam ser incluídos no backup manualmente.
#!/bin/bash
# Inicia o script e indica que será interpretado pelo bash
tar -czvf /backup/full_backup_$(date +%F).tar.gz /home /etc
/var/www
# tar: Comando para criar arquivos tar
# -c: Cria um novo arquivo de backup
# -z: Comprime o arquivo com gzip
# -v: Modo verbose, mostra o progresso
# -f: Especifica o nome do arquivo
# /backup/full_backup_$(date +%F).tar.gz: Caminho e nome do
arquivo de backup, com a data atual
# /home /etc /var/www: Diretórios a serem incluídos no backup
Pense nele como um assistente pessoal que nunca dorme, nunca comete erros e está
sempre pronto para trabalhar.
Quando você executa este script, ele varre os diretórios mais críticos do seu sistema
– como `/home`, onde estão os arquivos dos usuários, `/etc`, onde estão suas
configurações essenciais, e `/var/www`, onde suas aplicações web vivem – e
guarda tudo em um arquivo compacto, etiquetado com a data atual.
Explicação:
Vamos destrinchar isso como se estivéssemos desenrolando um mapa do tesouro:
#!/bin/bash
# Inicia o script e indica que será interpretado pelo bash
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
8
Aqui, estamos simplesmente dizendo ao sistema que este script será interpretado
pelo Bash, o que é como dizer "Ei, pegue suas ferramentas de carpintaria, porque
vamos construir algo."
tar -czvf /backup/full_backup_$(date +%F).tar.gz /home /etc
/var/www
Agora, este comando é onde a mágica realmente acontece. Vamos quebrá-lo em
partes:
● `tar`: Este é o nosso comando principal, como o capitão do navio.
● `-c`: Significa "criar um novo arquivo", estamos começando um novo
backup.
● `-z`: Comprime o arquivo usando gzip, reduzindo o espaço que ele ocupará,
como empacotar roupas a vácuo.
● `-v`: Modo verbose, significa que ele nos mostrará cada arquivo sendo
processado, como um relatório ao vivo do que está acontecendo.
● `-f`: Especifica o nome do arquivo resultante, essencialmente rotulando
nosso pacote.
E o nome do arquivo? `/backup/full_backup_$(date +%F).tar.gz`
● `/backup/full_backup_`: Local onde o backup será salvo.
● `$(date +%F)`: Este pequeno truque adiciona a data atual ao nome do
arquivo, garantindo que cada backup é único.
● `.tar.gz`: Indica que é um arquivo tar comprimido.
E finalmente, os diretórios incluídos: `/home /etc /var/www`
Esses são os tesouros que estamos guardando. Cada um desses diretórios contém
partes vitais do seu sistema, como se fossem as jóias da coroa.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
9
Por que isso importa?
Usar este script é como ter um guarda-costas para seus dados.
Ele trabalha em segundo plano, garantindo que, se algo der errado – um ataque de
ransomware, uma falha de hardware, ou até mesmo um erro humano – você pode
simplesmente abrir seu cofre, recuperar o que foi perdido, e continuar seu dia sem
perder o ritmo.
Então, da próxima vez que você pensar em backup, não pense em horas extras ou
complexidade. Pense neste script como seu braço direito, garantindo que, aconteça
o que acontecer, você está preparado.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
10
2. Script de Backup Incremental
Imagine que você é um administrador de sistemas, e sua tarefa é como cuidar de
um jardim imenso.
Todos os dias, você precisa garantir que as plantas estão saudáveis, regadas e livres
de ervas daninhas.
Agora, pense em backups como a forma de proteger esse jardim.
Um backup completo é como tirar uma foto detalhada de todo o jardim.
Mas, se você já tem várias fotos e só quer registrar as mudanças, um backup
incremental é a maneira inteligente de fazer isso.
E o script de backup incremental é a ferramenta que faz isso para você de forma
eficiente e sem complicações.
Onde este script se encaixa no seu dia a dia?1
Imagine que você está no escritório, e acabou de fazer um backup completo do seu
sistema na segunda-feira.
Agora é quarta-feira, e você não quer fazer todo aquele backup completo novamente
– seria como tirar uma nova foto do jardim inteiro quando você só precisa das
novas flores que apareceram.
#!/bin/bash
# Inicia o script e indica que será interpretado pelo bash
rsync -av --progress /source_directory /backup_directory --delete
# rsync: Comando para sincronizar arquivos e diretórios
# -a: Modo arquivamento, preserva permissões, links, etc.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
11
# -v: Modo verbose, mostra o progresso
# --progress: Mostra o progresso durante a transferência
# /source_directory: Diretório de origem
# /backup_directory: Diretório de destino
# --delete: Remove arquivos do destino que não existem mais na
origem
Explicação
Pense nele como um zelador diligente que só rega as novas plantas e remove as
ervas daninhas que apareceram desde a última visita.
Ele não perde tempo com o que já está perfeito; ele foca apenas nas mudanças.
#!/bin/bash
# Realiza backup incremental usando rsync
rsync -av --progress /source_directory /backup_directory --delete
Vamos destrinchar este script como se estivéssemos explorando um manual de
instruções de uma máquina poderosa:
rsync -av --progress /source_directory /backup_directory --delete
Este comando é onde a mágica realmente acontece. Vamos decifrar isso:
● `rsync`: Este é o nosso comando principal, o maestro da orquestra.
● `-a`: Modo arquivamento, que preserva permissões, links simbólicos e outras
propriedades importantes, como um jardineiro que cuida das plantas com
precisão.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
12
● `-v`: Modo verbose, que mostra o progresso em tempo real, como um
relatório ao vivo do que está sendo feito.
● `--progress`: Mostra o progresso durante a transferência, garantindo que
você sabe exatamente o que está acontecendo a cada momento.
● `/source_directory`: O diretório de origem que você quer fazer o backup, o
jardim original.
● `/backup_directory`: O diretório de destino onde o backup será armazenado,
o novo jardim onde as mudanças serão registradas.
● `--delete`: Remove arquivos do destino que não existem mais na origem,
limpando as ervas daninhas e mantendo tudo em ordem.
Por que isso importa?
Usar este script é como ter um jardineiro que só se preocupa com as mudanças.
Ele economiza tempo, espaço e recursos, garantindo que você só faça backup do que
realmente mudou.
Isso significa menos tempo gasto em backups e mais eficiência na gestão dos seus
dados.
Quando você implementa este script, você está basicamente dizendo:
"Eu sou um administrador de sistemas inteligente e eficiente, que sabe a
importância de otimizar processos."
Você não precisa gastar horas fazendo backups completos todos os dias.
Em vez disso, você pode fazer um backup completo uma vez por semana e backups
incrementais diários, garantindo que sempre tenha uma cópia atualizada dos seus
dados sem a sobrecarga.
Com o script de backup incremental, você estará sempre preparado para qualquer
mudança, sem perder tempo com o que já está perfeito.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
13
3. Monitoramento de Uso de Disco
Imagine que você é o zelador de um prédio de apartamentos.
Seu trabalho é garantir que todos os sistemas estejam funcionando perfeitamente.
Um dos maiores pesadelos que você pode enfrentar é um transbordamento –
imagine se os lixeiros não viessem por semanas e o lixo começasse a se acumular
nos corredores.
Você precisa de um sistema que monitore constantemente a quantidade de lixo e te
avise quando os limites aceitáveis estão prestes a ser ultrapassados.
Agora, aplique essa mesma lógica ao seu trabalho como administrador de sistemas.
Em vez de lixo, você está monitorando o uso do disco.
Se o disco encher demais, todo o sistema pode falhar, causando desde lentidão até
perda de dados.
Felizmente, temos um Script de Monitoramento de Uso de Disco que atua
como um alarme, te avisando antes que o caos se instale.
Onde este script se encaixa no seu dia a dia?
Você está no seu escritório, tomando seu café e garantindo que todos os sistemas
estão funcionando bem.
Tudo parece perfeito, até que você recebe um alerta: o uso do disco está acima de
80%. Se você não tomar uma ação imediata, os serviços podem parar, e seus
usuários podem enfrentar interrupções.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
14
Pense neste script como um sensor de lixo inteligente.
Ele verifica continuamente o espaço disponível no disco e envia um alerta quando o
limite é excedido.
É como ter um zelador digital que nunca dorme e que te avisa antes que o problema
fique fora de controle.
#!/bin/bash
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
15
# Verifica o uso do disco e envia um alerta se acima de 80%
USAGE=$(df / | grep / | awk '{ print $5 }' | sed 's/%//g')
if [ $USAGE -gt 80 ]; then
echo "Uso de disco acima de 80%" | mail -s "Alerta de Uso de
Disco"
[email protected] fi
Explicação:
Vamos destrinchar isso como se estivéssemos lendo um manual de uma ferramenta
vital:
USAGE=$(df / | grep / | awk '{ print $5 }' | sed 's/%//g')
Este comando é o coração do nosso sensor. Vamos dividi-lo em partes:
● `df /`: Mostra o uso do disco no diretório raiz. Pense nisso como verificar o
nível de lixo em um andar específico do prédio.
● `grep /`: Filtra a linha que corresponde ao diretório raiz.
● `awk '{ print $5 }'`: Extrai a quinta coluna, que contém a porcentagem de uso
do disco. É como isolar a informação relevante sobre o lixo acumulado.
● `sed 's/%//g'`: Remove o símbolo de porcentagem para facilitar a
comparação. Isso torna os dados mais utilizáveis.
if [ $USAGE -gt 80 ]; then
echo "Uso de disco acima de 80%" | mail -s "Alerta de Uso de
Disco"
[email protected] fi
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
16
Aqui está a ação:
● `if [ $USAGE -gt 80 ]; then`: Verifica se o uso do disco é maior que 80%. É
como definir um limite crítico de lixo antes de chamar os lixeiros.
● `echo "Uso de disco acima de 80%" | mail -s "Alerta de Uso de Disco"
[email protected]`: Envia um email de alerta, avisando que o limite foi
ultrapassado.
Por que isso importa?
Usar este script é como ter um sistema de monitoramento preventivo que te avisa
antes que o desastre aconteça.
Ele economiza tempo, evita problemas e garante que você sempre esteja um passo à
frente.
Com este script, você não precisa se preocupar em monitorar manualmente o uso
do disco.
Ele faz isso por você, enviando alertas para que você possa tomar as ações
necessárias antes que seja tarde demais.
Imagine nunca mais ser pego de surpresa por falta de espaço no disco.
Com este script, você pode garantir que seus sistemas estejam sempre operando de
forma eficiente, sem interrupções.
É uma ferramenta indispensável para qualquer administrador de sistemas que quer
manter seu ambiente limpo e funcional.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
17
4. Monitoramento de Serviços
Imagine que você é o gerente de uma grande fábrica.
Todos os dias, dezenas de máquinas trabalham juntas para manter a produção
funcionando perfeitamente.
Agora, imagine que uma dessas máquinas para de funcionar de repente.
A produção inteira pode ser interrompida, e o prejuízo é inevitável.
Você precisa de um supervisor que esteja sempre atento, pronto para agir assim que
qualquer máquina mostrar sinais de falha.
No mundo da administração de sistemas, os serviços críticos são essas máquinas.
Se um serviço como o servidor web Apache cair, todo o seu sistema pode parar.
É aí que entra o Script de Monitoramento de Serviços. Pense nele como um
supervisor vigilante que nunca dorme, sempre pronto para garantir que tudo
continue funcionando sem interrupções.
Onde este script se encaixa no seu dia a dia?
Você está no seu escritório, e sua rotina envolve monitorar a saúde de vários
serviços críticos.
O servidor web precisa estar ativo para que os usuários possam acessar o site, o
banco de dados precisa estar funcionando para processar transações, e assim por
diante.
Sem um monitoramento contínuo, você pode nem perceber que um desses serviços
caiu até que alguém reclame, e aí o prejuízo já está feito.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
18
O Script de Monitoramento de Serviços é como ter um supervisor digital que
verifica constantemente o status dos serviços.
Se algum deles cair, ele o reinicia automaticamente, garantindo que o sistema
continue funcionando perfeitamente.
#!/bin/bash
# Verifica e reinicia serviço se estiver inativo
service_name="apache2"
if ! systemctl is-active --quiet $service_name; then
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
19
systemctl restart $service_name
fi
Explicação:
Vamos destrinchar isso como se estivéssemos explorando um manual de uma
máquina crucial:
service_name="apache2"
# Define o nome do serviço a ser monitorado
Nesta linha, estamos definindo qual serviço vamos monitorar. Pense nisso como
identificar qual máquina na fábrica precisa de atenção especial.
if ! systemctl is-active --quiet $service_name; then
# Verifica se o serviço está ativo
Aqui, o script verifica o status do serviço. É como o supervisor checando se a
máquina está funcionando corretamente.
systemctl restart $service_name
# Reinicia o serviço se estiver inativo
Se o serviço não estiver ativo, o script o reinicia automaticamente. É como o
supervisor consertando a máquina assim que detecta um problema, sem esperar
que você perceba e mande consertar.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
20
Por que isso importa?
Usar este script é como ter um supervisor incansável que está sempre de olho nas
máquinas da sua fábrica.
Ele economiza tempo, evita interrupções e garante que os serviços críticos estejam
sempre ativos. Isso significa menos tempo de inatividade e mais eficiência
operacional.
Com o Script de Monitoramento de Serviços, você não precisa se preocupar
em monitorar manualmente cada serviço.
Ele faz isso por você, reiniciando qualquer serviço que cair, garantindo que tudo
continue funcionando perfeitamente.
Imagine nunca mais ser pego de surpresa por um serviço que caiu. Com este script,
você pode garantir que seus serviços críticos estejam sempre ativos,
proporcionando uma experiência contínua e sem interrupções para seus usuários.
É como ter um supervisor digital que garante que tudo esteja funcionando, o tempo
todo.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
21
5. Limpeza de Logs Antigos
Imagine que você é um gerente de um grande armazém.
Todos os dias, novas mercadorias chegam, e você precisa registrar e armazenar
tudo com precisão.
Mas o espaço no armazém não é infinito. Se você deixar caixas antigas se
acumularem, eventualmente ficará sem espaço para as novas mercadorias, e a
eficiência do armazém irá por água abaixo.
No mundo da administração de sistemas, os logs são como essas caixas de
mercadorias.
Eles registram atividades importantes, mas se não forem gerenciados, podem
ocupar espaço valioso e atrapalhar o desempenho do sistema.
Aqui entra o Script de Limpeza de Logs Antigos. Pense nele como um sistema
automatizado que verifica periodicamente o armazém e remove as caixas que já
passaram do prazo de validade, garantindo que sempre haja espaço para as novas
remessas.
Onde este script se encaixa no seu dia a dia?
Você está no escritório, garantindo que os servidores estejam funcionando de
maneira eficiente.
Os logs são cruciais para monitorar e resolver problemas, mas com o tempo, eles
começam a se acumular, ocupando espaço de armazenamento.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
22
Com este script, você pode automatizar a limpeza de logs antigos, liberando espaço
em disco e mantendo tudo funcionando sem problemas.
Pense neste script como um sistema de gerenciamento de armazém que identifica e
remove automaticamente as caixas (logs) que estão no armazém há mais de 30 dias,
liberando espaço para novos registros sem que você precise levantar um dedo.
#!/bin/bash
# Exclui logs antigos (mais de 30 dias)
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
23
find /var/log -type f -name "*.log" -mtime +30 -exec rm -f {} \;
Explicação:
Vamos destrinchar isso como se estivéssemos configurando um sistema
automatizado de gestão de armazém:
find /var/log -type f -name "*.log" -mtime +30 -exec rm -f {} \;
Este comando é o núcleo do nosso sistema de gerenciamento de armazém. Vamos
decifrá-lo:
● `find /var/log`: Busca arquivos no diretório `/var/log`, onde os logs são
armazenados. Pense nisso como nosso sistema verificando todas as
prateleiras do armazém.
● `-type f`: Limita a busca a arquivos (não diretórios). O sistema está
procurando apenas caixas, não estantes inteiras.
● `-name "*.log"`: Filtra para encontrar apenas arquivos com extensão `.log`.
Estamos focando nos logs, não em outros tipos de arquivos.
● `-mtime +30`: Filtra arquivos com mais de 30 dias. O sistema está
interessado apenas nas caixas que já passaram do prazo de validade.
● `-exec rm -f {} \;`: Exclui os arquivos encontrados. O sistema pega essas
caixas antigas e as remove do armazém.
Por que isso importa?
Usar este script é como ter um sistema automatizado de gerenciamento de
armazém que garante que o espaço de armazenamento nunca seja desperdiçado
com mercadorias antigas e desnecessárias.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
24
Ele economiza tempo, evita que o espaço em disco seja ocupado por arquivos
obsoletos e garante que os logs importantes estejam sempre acessíveis.
Com o Script de Limpeza de Logs Antigos, você não precisa se preocupar em
monitorar e limpar manualmente os logs antigos. Ele faz isso por você, liberando
espaço e mantendo seu sistema eficiente.
Imagine nunca mais se preocupar com o espaço em disco sendo ocupado por logs
antigos. Com este script, você pode garantir que seu ambiente de trabalho esteja
sempre limpo e organizado, pronto para funcionar sem interrupções.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
25
6. Atualização do Sistema
Imagine que você é um chefe de cozinha em um restaurante renomado.
A cada dia, você recebe ingredientes frescos, e seu trabalho é garantir que a
despensa esteja sempre abastecida com os melhores produtos.
No entanto, se você não fizer isso de maneira eficiente, pode acabar com
ingredientes vencidos, comprometendo a qualidade dos pratos que serve.
No mundo da administração de sistemas, as atualizações do sistema e patches de
segurança são como esses ingredientes frescos.
Eles mantêm seu sistema seguro e eficiente, mas se você não cuidar disso
regularmente, pode acabar com vulnerabilidades e problemas de desempenho.
Aqui entra o Script de Atualização do Sistema. Pense nele como um assistente
de cozinha automatizado que verifica e repõe automaticamente os ingredientes
necessários, garantindo que sua despensa esteja sempre em ordem e pronta para
preparar pratos de alta qualidade.
Onde este script se encaixa no seu dia a dia?
Você está no escritório, gerenciando uma infraestrutura crítica de TI.
As atualizações de sistema e patches de segurança são essenciais para manter tudo
funcionando sem problemas e protegido contra ameaças.
No entanto, fazer isso manualmente pode ser tedioso e propenso a erros.
Com este script, você pode automatizar o processo, garantindo que seu sistema
esteja sempre atualizado e seguro sem esforço adicional.
Pense neste script como seu assistente de cozinha que verifica a despensa todas as
manhãs, repõe o que está faltando e descarta o que não está mais bom.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
26
Isso permite que você se concentre em tarefas mais importantes, sabendo que sua
"cozinha" está sempre equipada com os melhores ingredientes.
#!/bin/bash
# Atualiza o sistema e instala patches de segurança
apt-get update && apt-get upgrade -y
Explicação:
Vamos destrinchar isso como se estivéssemos montando um guia para o seu
assistente de cozinha:
apt-get update && apt-get upgrade -y
Este comando é o núcleo do nosso processo de atualização. Vamos decifrá-lo:
● `apt-get update`: Atualiza a lista de pacotes disponíveis, como verificar os
ingredientes disponíveis no mercado. Isso garante que você saiba exatamente
o que está disponível para atualizar.
● `&&`: Garante que o próximo comando só seja executado se o anterior tiver
sucesso. É como dizer "verifique os ingredientes e, se tudo estiver certo,
prossiga com a compra".
● `apt-get upgrade -y`: Instala as atualizações disponíveis. É como comprar os
ingredientes frescos e colocá-los na despensa.
● `-y`: Responde "sim" automaticamente a todas as perguntas, agilizando o
processo e evitando interrupções desnecessárias. É como ter um assistente
que sabe exatamente o que você quer e age de acordo.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
27
Por que isso importa?
Usar este script é como ter um assistente confiável que cuida de manter a qualidade
dos ingredientes na sua cozinha sem que você precise se preocupar.
Ele economiza tempo, evita esquecimentos e garante que seu sistema esteja sempre
protegido e eficiente.
Com o Script de Atualização do Sistema, você não precisa se preocupar em
verificar manualmente as atualizações e instalar patches de segurança.
Ele faz isso por você, permitindo que você se concentre em outras tarefas
importantes e garantindo que seu ambiente de TI esteja sempre atualizado e
seguro.
Imagine nunca mais se preocupar com vulnerabilidades ou problemas de
desempenho causados por falta de atualizações. Com este script, você pode garantir
que seu sistema esteja sempre na melhor forma, pronto para enfrentar qualquer
desafio.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
28
7. Verificação de Integridade de Arquivos
Imagine que você é o diretor de um museu de arte. Sua coleção inclui obras de arte
inestimáveis, cada uma delas única e insubstituível.
A cada noite, você precisa garantir que nenhuma obra foi alterada ou danificada.
Para isso, você utiliza um scanner especial que verifica cada peça, comparando-a
com uma imagem de referência para garantir que tudo está exatamente como
deveria estar.
No mundo da administração de sistemas, garantir a integridade dos arquivos
críticos é tão importante quanto proteger essas obras de arte.
Aqui entra o Script de Verificação de Integridade de Arquivos. Pense nele
como seu scanner especial que verifica cada arquivo crítico no seu sistema,
garantindo que nada foi alterado ou corrompido.
Onde este script se encaixa no seu dia a dia?
Você está no seu escritório, responsável por manter a segurança e a integridade de
um sistema crítico.
Alterações ou corrupções em arquivos importantes podem causar grandes
problemas, desde falhas no sistema até brechas de segurança.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
29
Com este script, você pode automatizar a verificação da integridade dos arquivos,
garantindo que eles permaneçam intactos e seguros.
Pense neste script como seu scanner de obras de arte, verificando constantemente
se cada arquivo está exatamente como deveria estar, sem alterações ou danos.
Isso permite que você identifique e resolva problemas rapidamente, antes que
causem danos maiores.
#!/bin/bash
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
30
# Verifica a integridade dos arquivos usando checksums
md5sum -c /path/to/checksums.md5
Explicação:
Vamos destrinchar isso como se estivéssemos configurando seu scanner de obras de
arte:
md5sum -c /path/to/checksums.md5
Este comando é o núcleo do nosso processo de verificação de integridade. Vamos
decifrá-lo:
● `md5sum -c`: Verifica os checksums MD5. É como usar seu scanner especial
para comparar a imagem atual da obra de arte com a imagem de referência.
● `/path/to/checksums.md5`: Caminho do arquivo com os checksums para
verificação. Este arquivo contém os valores de referência para cada arquivo,
garantindo que qualquer alteração seja detectada.
Por que isso importa?
Usar este script é como ter um sistema de segurança avançado que garante a
integridade de suas obras de arte, verificando constantemente que tudo está em
ordem.
Ele economiza tempo, evita problemas e garante que seus arquivos críticos estejam
sempre seguros e intactos.
Com o Script de Verificação de Integridade de Arquivos, você não precisa se
preocupar em verificar manualmente a integridade dos arquivos críticos. Ele faz
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
31
isso por você, permitindo que você se concentre em outras tarefas importantes e
garantindo que seu sistema esteja sempre seguro.
Imagine nunca mais se preocupar com alterações ou corrupções em arquivos
críticos. Com este script, você pode garantir que seus arquivos estejam sempre na
melhor forma, prontos para suportar qualquer desafio.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
32
8. Monitoramento de Recursos do Sistema
Imagine que você é o capitão de um navio navegando pelos oceanos. Seu trabalho é
garantir que tudo a bordo funcione perfeitamente - desde os motores até o
suprimento de alimentos.
Para isso, você precisa monitorar constantemente os recursos do navio:
combustível, alimentos, e a eficiência dos motores. Se algo sair do controle, você
precisa saber imediatamente para corrigir o curso.
No mundo da administração de sistemas, o monitoramento de recursos como CPU,
memória e rede é igualmente crucial.
Eles são o combustível, os alimentos e os motores do seu sistema.
Aqui entra o Script de Monitoramento de Recursos do Sistema. Pense nele
como o seu painel de controle no navio, monitorando constantemente os recursos
vitais e gerando relatórios para que você possa manter tudo funcionando sem
problemas.
Onde este script se encaixa no seu dia a dia?
Você está no seu escritório, gerenciando um sistema crítico que precisa estar
sempre em funcionamento.
O desempenho da CPU, da memória e da rede são fundamentais para a saúde do
sistema. Sem monitoramento contínuo, você pode não perceber problemas até que
seja tarde demais, resultando em falhas e interrupções.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
33
Pense neste script como seu painel de controle, constantemente monitorando os
recursos do sistema e gerando relatórios.
Isso permite que você identifique e resolva problemas rapidamente, garantindo que
seu "navio" permaneça no curso certo.
Código:
#!/bin/bash
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
34
# Monitora os recursos do sistema e gera um relatório
top -b -n1 | head -n 10 > /var/log/sys_resources.log
Explicação:
Vamos destrinchar isso como se estivéssemos configurando seu painel de controle
no navio:
top -b -n1 | head -n 10 > /var/log/sys_resources.log
Este comando é o núcleo do nosso processo de monitoramento. Vamos decifrá-lo:
● `top -b -n1`: Executa o comando `top` em modo batch para uma única
iteração. Pense nisso como uma leitura instantânea dos medidores de
combustível, alimentos e eficiência dos motores no seu navio.
● `head -n 10`: Pega as primeiras 10 linhas da saída do comando `top`. Isso
filtra as informações mais relevantes, como se você estivesse focando nos
dados críticos do seu painel de controle.
● `> /var/log/sys_resources.log`: Redireciona a saída para um arquivo de log.
Isso é como registrar as leituras no diário de bordo do navio, onde você pode
revisar mais tarde.
Por que isso importa?
Usar este script é como ter um painel de controle avançado que monitora
continuamente a saúde do seu navio, economizando tempo e evitando problemas
graves.
Ele garante que você sempre tenha uma visão clara do desempenho dos recursos do
sistema, permitindo que você tome decisões informadas rapidamente.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
35
Com o Script de Monitoramento de Recursos do Sistema, você não precisa
se preocupar em monitorar manualmente a utilização de CPU, memória e rede. Ele
faz isso por você, gerando relatórios que você pode revisar para garantir que tudo
esteja funcionando perfeitamente.
Imagine nunca mais ser pego de surpresa por um uso excessivo de CPU ou uma
falha de memória. Com este script, você pode garantir que seu sistema esteja
sempre na melhor forma, pronto para enfrentar qualquer desafio.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
36
9. Notificação de Erros no Sistema
Imagine que você é o gerente de um hotel de luxo. Tudo parece perfeito na
superfície: os hóspedes estão felizes, os quartos estão limpos, e o serviço de quarto é
impecável.
Mas, nos bastidores, sua equipe de manutenção está constantemente resolvendo
problemas – desde lâmpadas queimadas até vazamentos de encanamento.
Agora, imagine se você pudesse saber instantaneamente sobre cada pequeno
problema no momento em que ele acontece, sem esperar que um hóspede
reclamasse.
No mundo da administração de sistemas, detectar erros no log do sistema é
exatamente isso. É como ter olhos e ouvidos em todos os cantos do hotel.
Aqui entra o Script de Notificação de Erros no Sistema. Pense nele como um
sistema de alerta que avisa imediatamente sobre qualquer problema, permitindo
que você resolva antes que alguém perceba.
Onde este script se encaixa no seu dia a dia?
Você está no seu escritório, gerenciando uma infraestrutura crítica de TI. Erros nos
logs do sistema podem indicar problemas graves que precisam de atenção imediata.
Esperar até que esses problemas se tornem visíveis para os usuários pode resultar
em downtime, falhas de segurança e muitas reclamações.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
37
Com este script, você pode ser notificado instantaneamente sobre qualquer erro
detectado nos logs, permitindo uma resposta rápida.
Pense neste script como seu sistema de alerta no hotel, avisando você
imediatamente sobre qualquer problema nos bastidores, para que você possa
corrigi-lo antes que os hóspedes sejam afetados.
Código:
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
38
#!/bin/bash
# Notifica erros encontrados nos logs do sistema
tail -n 100 /var/log/syslog | grep -i "error" | mail -s "Erros no
Sistema" [email protected]
Explicação:
Vamos destrinchar isso como se estivéssemos configurando seu sistema de alerta
no hotel:
tail -n 100 /var/log/syslog | grep -i "error" | mail -s "Erros no
Sistema"
[email protected]Este comando é o núcleo do nosso sistema de alerta. Vamos decifrá-lo:
● `tail -n 100 /var/log/syslog`: Pega as últimas 100 linhas do log do sistema.
Pense nisso como verificar os registros das últimas 100 ações da equipe de
manutenção no hotel.
● `grep -i "error"`: Filtra as linhas que contêm a palavra "error" (ignorando
maiúsculas/minúsculas). Isso é como identificar todas as ocorrências de
problemas relatados.
● `mail -s "Erros no Sistema"
[email protected]`: Envia um email com o
assunto "Erros no Sistema". Isso é como enviar uma mensagem instantânea
para você sobre qualquer problema detectado.
Por que isso importa?
Usar este script é como ter um sistema de alerta avançado que te avisa
imediatamente sobre qualquer problema nos bastidores do seu hotel,
economizando tempo e evitando surpresas desagradáveis. Ele garante que você
sempre esteja ciente dos erros no sistema, permitindo uma resposta rápida e eficaz.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
39
Com o Script de Notificação de Erros no Sistema, você não precisa se
preocupar em verificar manualmente os logs do sistema para encontrar erros. Ele
faz isso por você, enviando notificações instantâneas para que você possa agir
rapidamente.
Imagine nunca mais ser pego de surpresa por um erro de sistema que você poderia
ter corrigido antes que causasse problemas. Com este script, você pode garantir que
seu sistema esteja sempre monitorado, pronto para enfrentar qualquer desafio.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
40
10. Automação de Tarefas Cron
Imagine que você é o maestro de uma grande orquestra. Cada músico sabe
exatamente quando começar a tocar, graças à sua batuta que guia o ritmo e a
harmonia da sinfonia. Sem isso, a música seria uma cacofonia de sons desconexos.
No mundo da administração de sistemas, as tarefas cron são como esses músicos, e
o cron é a batuta que garante que cada tarefa seja executada no momento certo.
Aqui entra o Script de Automação de Tarefas Cron. Pense nele como a sua
batuta digital, programando e gerenciando tarefas automaticamente para que seu
"concerto" de TI seja executado de forma suave e sem falhas.
Onde este script se encaixa no seu dia a dia?
Você está no seu escritório, gerenciando uma infraestrutura complexa de TI.
Existem tarefas que precisam ser executadas regularmente: backups, atualizações,
limpeza de logs, entre outras. Fazer isso manualmente não é apenas tedioso, mas
também propenso a erros. Com este script, você pode automatizar essas tarefas,
garantindo que elas sejam executadas no momento certo, todos os dias.
Pense neste script como a batuta que você usa para garantir que cada tarefa em seu
sistema seja executada com precisão e no tempo certo. Isso libera você para se
concentrar em problemas mais complexos, sabendo que as tarefas de rotina estão
sob controle.
Código:
#!/bin/bash
# Adiciona uma nova tarefa cron
echo "0 2 * * * /path/to/script.sh" | crontab -
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
41
Explicação:
Vamos destrinchar isso como se estivéssemos montando seu maestro digital:
echo "0 2 * * * /path/to/script.sh" | crontab -
Este comando é o núcleo do nosso processo de automação de tarefas. Vamos
decifrá-lo:
● `echo "0 2 * * * /path/to/script.sh"`: Cria uma nova entrada cron. Pense
nisso como escrever a partitura que o maestro irá seguir.
● `0 2 * * *`: Define a execução do script diariamente às 2:00 AM. É como
dizer aos músicos exatamente quando começar a tocar.
● `/path/to/script.sh`: Caminho do script a ser executado. É a peça específica
que será tocada.
● `| crontab -`: Adiciona a nova tarefa ao crontab do usuário. Isso entrega a
partitura ao maestro, garantindo que ele siga a programação.
Por que isso importa?
Usar este script é como ter um maestro digital que garante que cada tarefa em seu
sistema seja executada com precisão e no tempo certo, economizando tempo e
evitando problemas. Ele garante que tarefas críticas sejam executadas
automaticamente, sem a necessidade de intervenção manual.
Com o Script de Automação de Tarefas Cron, você não precisa se preocupar
em lembrar de executar tarefas importantes. Ele faz isso por você, permitindo que
você se concentre em outras tarefas mais importantes e garantindo que seu sistema
funcione como uma sinfonia bem afinada.
Imagine nunca mais se preocupar com backups perdidos ou atualizações
esquecidas. Com este script, você pode garantir que seu sistema esteja sempre na
melhor forma, pronto para enfrentar qualquer desafio.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
42
Então, vá em frente, implemente este script e sinta a tranquilidade de saber que
suas tarefas críticas estão sendo gerenciadas automaticamente, como se você tivesse
um maestro digital garantindo que cada nota seja tocada no momento certo.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start
43
Conclusão
Vamos ser diretos. Esses scripts são como ter uma equipe de super-heróis ao seu
lado, cuidando das tarefas diárias de administração de sistemas. Eles não apenas
economizam seu tempo precioso, mas também eliminam aquelas pequenas falhas
humanas que podem se transformar em grandes problemas. Pense neles como seu
exército de robôs, sempre prontos para entrar em ação e garantir que tudo funcione
perfeitamente.
Use esses scripts ao máximo, e não tenha medo de ajustá-los para se encaixarem
perfeitamente nas suas necessidades específicas. A automação é a chave para
liberar seu tempo e permitir que você se concentre no que realmente importa:
inovar e levar seu sistema ao próximo nível.
Então, vá em frente. Implante esses scripts e veja a diferença que eles fazem no seu
dia a dia. É hora de trabalhar de forma mais inteligente, não mais difícil.
Esse Ebook Faz Parte Do Pacote: Programação Shell Script - Start