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 << xmultiplica por 2 elevado a x;n >> xdivide.
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