Categoria: Linux

Como fazer backup de arquivos com timestamp

Casualmente na vida de um administrador de Sistemas/Servidores é necessario fazer rápidos backups de arquivos, nas mais diferentes situações:

  • Backup do arquivo de configuração de serviço crítico, antes de alterar um parâmetro importante (pra poder voltar atrás na configuração);
  • Backup do arquivo de log de um serviço, no momento de um problema, que geralmente é de madrugada em ambientes 24×7 (para análise no dia posterior);
  • Backup de diretório de sistema antes de aplicar um ‘patch’ importante (pra poder voltar na versão anterior);

    Read More

Simples interpretador de comandos feito em shellscript

Em determinados tipos de aplicativo shellscript, é necessário utilizar recursos como MENUs, PARÂMETROS, ou até mesmo interpretador de comandos interativo. Principalmente quando falamos de tarefas que não podem ser automatizadas, por exemplo: um monitoramento de replicação de banco de dados que eventualmente precisa da interação de um colaborador na função de “operador/monitor”.

Neste POST, apresenta-se como fazer um interpretador de comandos internos para um script:

Segue código de 26 linhas:

Read More

Como consultar se uma porta está aberta ou fechada remotamente

Existem diversas formas de consultar se uma porta está aberta ou fechada em um determinado host da rede (remotamente).
Uns preferem abrir uma conexão normal pelo programa padrão (um navegador se a porta for 80, um cliente de e-mail se a porta for 143, 25 ou 110), outros preferem abrir um “telnet host porta” e há ainda aqueles que usam programas exploradores de rede e port scanners como o “nmap“.

Neste post, vou explicar como usar o “netcat” (binario nc) para explorar determinada porta em um host de sua rede. Ainda teremos um exemplo de combinação de códigos em shellscript para informar a você se a porta está aberta ou fechada.

Para entender o uso do netcat para este fim, imaginemos que em minha máquina local tenho o serviço OpenSSH aguardando conexões na porta 22, mas não tenho nenhum serviço aguardando conexões na porta 23. Ou seja:

Read More

Criando arquivos temporários durante a execução do seu programa

Em determinados momentos da programação, pode ser necessário criar algum arquivo temporário durante a execução do seu shellscript. Este arquivo pode ser para controle de execução, para processamento interno ou até mesmo para trocar informações com outros programas. Logicamente que, como o acesso à disco é consideravelmente LENTO em comparação com acesso à memória RAM, o recurso de criação de um arquivo temporário em disco deve ser utilizado sempre que não houver alternativa possível utilizando memória (variáveis, vetores, etc).

Read More

Listando arquivos sem o caminho completo com auxílio do laço de repetição FOR (bash)

Programadores shellscript e administradores de servidores Linux em geral, sentem dificuldades para solucionar pequenos problemas que as vezes parecem ser “tão fácil”, mas que na hora de colocar a “mão na massa” pra resolver, não é tão facil assim.

Postarei aqui alguns dos cenários que me deparo, no intuito de auxiliar o pessoal que pesquisa e se interessa pelo assunto.

Read More

Configurando o Layout de teclado no console Linux – *RED-HAT

Quem nunca se deparou com um layout US e um teclado ABNT2 antes…?  Poise, por varias vezes me deparei com esta situação, sempre me virei por conhecer bem o layout US, porém quando a necessidade de correção foi mais forte tive que me virar.. hehehe

Para plataformas RED HAT que necessitam realizar a troca do layout de teclado no modo texto do Linux (console tty, CRTL+ALt+F2, F3, etc…), e que de quebra não possua a ferramenta system-config-keyboard-tui ou system-config-keyboard pode alterar a configuração através do arquivo /etc/sysconfig/keyboard. Neste arquivo deve conter uma linha KAYTABLE=”LAYOUT DESEJADO”.

Seguem exemplos dos dois mais usados  =)

Read More

LVM como disco em maquinas virtuais VMWare

O VMware por padrão não consegue tratar unidades lógicas LVM como dispositivos físicos ao utilizar um disco virtual do tipo “Physical”. Para contornar este comportamento, podemos “enganar” o VMWARE com os seguintes passos:

Damos permissão 755 para o diretório de mapeamento do Volume-Group do LVM. Supondo que temos o VG denominado LVM teríamos o seguinte:

chmod 755 /dev/LVM

Depois devemos dar permissão 666 para o Logical-Volume a ser utilizado como disco virtual na VM. Considerando que temos o logical volume nomeado como VM01_raiz teríamos o seguinte:

Read More

01 – Criando e excluindo volumes de discos ZFS, uma abordagem inicial ao ZPOOL

Bom, este é o começo da utilização do ZFS, saber criar os POOLs, ou seja, os grupos de discos (ou o disco) para abrigar os sistemas de arquivos ZFS. É meio complicado entender de cara isso, mas no decorrer deste primeiro artigo garanto que isso ficará claro.

Para o melhor entendimento, vamos simular uma situação comum de hoje. Possuímos 4 discos rígidos (Hds) de 750Gb cada, e desejamos criar um sistema RAID e tornar destes 4 discos um só volume possuindo a soma do espaço em disco dos 4. Neste nosso caso teríamos 4 x 750, que seria aproximadamente 3Tb de espaço em disco, legal isso né?

Read More

Uma introdução ao ZFS

O ZFS (ZettaByte File System) é um sistema de arquivos muito moderno, apesar de não muito recente que implementa em seu funcionamento vários recursos extraordinários, normalmente encontrados somente em STORAGES avançados, tais como suporte a snapshots, RAID 0 e 1 para desempenho e proteção de dados (espelhamento), suporte a hotspare, checksum anti-corrompimento, controle de quota e alocação de espaço em disco, volumes lógico (LUN) para alocamento de espaço em disco, dentre muitos outros adicionais, como compactação a quente de sistemas de arquivos, compartilhamentos dos volumes de dados, controles de permissões, e muito mais.

Read More