Gerenciamento de Armazenamento, Redes e Automação de Tarefas em Sistemas Linux

Administração de Discos e Armazenamento

Monitoramento de Espaço

Para verificar o uso de espaço nas partições do sistema, utilizamos o utilitário df. A flag -h (human-readable) facilita a leitura convertendo bytes em GB ou TB.

df -h

Para analisar o consumo de espaço de diretórios específicos, o comando du é o mais indicado. O parâmetro -s resume o total e -h formata a saída.

du -sh /var/log/*

Manipulação de Dados com dd

O comando dd permite copiar e converter dados em baixo nível. É frequentemente usado para criar arquivos de teste ou imagens de disco.

dd if=/dev/zero of=arquivo_teste.img bs=1M count=512
  • if: Origem dos dados (input file).
  • of: Destino dos dados (output file).
  • bs: Tamanho do bloco (ex: K, M, G).
  • count: Quantidade de blocos a serem copiados.

Configurações de RAID

  • RAID 0 (Striping): Foco em performance. Divide os dados entre os discos. Sem tolerância a falhas. Requer no mínimo 2 discos.
  • RAID 1 (Mirroring): Foco em segurança. Espelha os dados. Capacidade total igual ao menor disco. Requer no mínimo 2 discos.
  • RAID 5: Equilíbrio entre performance e segurança através de paridade. Suporta a falha de 1 disco. Requer no mínimo 3 discos.
  • RAID 6: Semelhante ao RAID 5, mas com paridade dupla. Suporta a falha de até 2 discos. Requer no mínimo 4 discos.
  • RAID 10: Combinação de espelhamento e divisão (RAID 1 + 0). Alta performance e redundância. Requer no mínimo 4 discos.

Fundamentos de Rede IPv4

O endereçamento IPv4 é composto por 32 bits, divididos em quatro octetos. A estrutura divide-se em ID de rede e ID de host.

Classes de Endereçamento

  • Classe A: Máscara padrão 255.0.0.0 (/8). IPs de 1 a 126. O IP 127 é reservado para loopback.
  • Classe B: Máscara padrão 255.255.0.0 (/16). IPs de 128 a 191.
  • Classe C: Máscara padrão 255.255.255.0 (/24). IPs de 192 a 223.

Operações Bitwise em Redes

Cálculos de sub-rede utilizam lógica binária para determinar o endereço de rede:

  • AND (&): Resulta em 1 apenas se ambos os bits forem 1. Utilizado para encontrar o endereço de rede comparando IP e Máscara.
  • OR (|): Resulta em 1 se ao menos um bit for 1.
  • XOR (^): Resulta em 1 se os bits forem diferentes.
  • Deslocamento (Shift): n << x multiplica por 2 elevado a x; n >> x divide.

Configuração de Interface de Rede

Comando ip

Utilizado para gerenciar endereços e rotas de forma imediata.

# Adicionar um endereço IP secundário
ip addr add 10.0.0.50/24 dev eth0

# Remover um endereço IP
ip addr del 10.0.0.50/24 dev eth0

# Adicionar IP com um label (alias)
ip addr add 10.0.0.51/24 dev eth0 label eth0:1

Arquivos de Configuração (CentOS/RHEL)

As configurações persistentes ficam em /etc/sysconfig/network-scripts/ifcfg-[interface].

DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1

A resolução de nomes (DNS) é configurada no arquivo /etc/resolv.conf:

nameserver 8.8.8.8
nameserver 1.1.1.1

Monitoramento de Conexões e Serviços

O comando ss substitui o antigo netstat para visualizra sockets abertos.

  • -t: Conexões TCP.
  • -u: Conexões UDP.
  • -l: Apenas sockets em estado de escuta (listening).
  • -n: Exibe números de porta em vez de nomes de serviço.
  • -p: Mostra o processo responsável pelo socket.
ss -tunlp

Gerenciamento de Serviços com Systemd

O systemctl é a ferramenta padrão para controlar o comportamento do sistema e serviços.

# Iniciar e parar serviços
systemctl start nginx
systemctl stop nginx

# Reiniciar e recarregar configurações
systemctl restart nginx
systemctl reload nginx

# Habilitar ou desabilitar inicialização automática
systemctl enable nginx
systemctl disable nginx

# Verificar status atual
systemctl status nginx

Automação com Crontab

O agendamento de tarefas permite executar scripts em intervalos definidos. O arquivo de configuração principal é o /etc/crontab.

Sintaxe do Cron

A estrutura segue o padrão: minuto hora dia mes dia_da_semana usuario comando

# Executa um backup às 03:00 todos os dias
00 03 * * * root /usr/local/bin/backup.sh

# Executa uma limpeza a cada 15 minutos
*/15 * * * * root rm -rf /tmp/cache/*

# Executa uma tarefa às 20:00, apenas de segunda a sexta
00 20 * * 1-5 root /scripts/relatorio.py

Comandos para gerenciar tarefas por usuário:

crontab -e  # Editar tarefas do usuário atual
crontab -l  # Listar tarefas agendadas
crontab -r  # Remover todas as tarefas do usuário

Tags: Linux storage Networking systemd cron

Publicado em 6-8 19:11 por Thomas