Posts de Janeiro 10th, 2008|Página de posts diários

… history – fácil e prático

As vezes precisamos lembrar de um comando ou mesmo repeti-lo seguidas vezes. Um caso bem frequente de repetição é quando estou verificando a fila do postfix (postqueue -p). Pois então segue abaixo, algumas formas de se usar o bash para melhorar

Um método simples é rodando o comando history e um pipe com grep para buscar um comando.

$ history | grep cat

110 cat /tmp/foo

Você pode rodar o comando e apertar ! e o número da linha

$ !110

cat /tmp/foo

Outro método que uso é digitando !? para fazer a busca de um determinado termo. Esta busca faz com que o último comando atrelado ao ítem seja executado.

$!?cat

cat /tmp/foo

Contudo, esta é uma solução perigosa que poderá causar algum dano no sistema se o comando executado foi um rm -rf * em um diretório, imagina então que refazendo a execução na raíz como root.

$ !? foo

cat /tmp/foo > /dev/hda

E por finalizando, executando o último comando com !!

$ !!

… performance de dispositivo de fita com iostat

Quando queremos validar a performance de dispositivos, o comando iostat é altamente utilizado, pois provê um amostra de dados lidos e escritos por segundos. Assim é possivel habilitar throughput por device. Porém há muito mais que poderá ser analisado utilizando a ferramenta Systemtap anexada ao iostat, e é exatamente baseado nestas ferramentas que concentraremos os nossos esforços, para demonstrar uma análise de performance para dispositivos de fitas.

Segue portanto o procedimento de instalação e alguns exemplos de uso do Systemtrap.

- Verificando se o systemtap está instalado:

# rpm -qa | grep systemtap

- Se o pacote não estiver instalado, instale da seguinte forma:

# yum -y install systemtap

Para o funcionamento perfeito do systemtap precisamos que o Kernel nos apresente algumas informações, para isso precisaremos da instalação do kernel-debuginfo também.

# yum -y install kernel-debuginfo-`uname -r`.i386.rpm

Obtendo o script iostat-scsi foi criado por Frank Ch. Eigler. E pode ser obtido em: http://sourceware.org/systemtap/wiki/WSiostatSCSI.

1. Download do arquivo iostat-scsi-rhel4.stp

2. Rode o script usando o Systemtap, rode o script usando o comando stap.

3. Vamos agora rodar o script. Detalhe: O parâmetro 1000 é em milisegundos.

# stap iostat-scsi.stp 1000

  1.   Device:       tps blk_read/s blk_wrtn/s  blk_read  blk_wrtn
          sda      3.00      0.00     64.00         0        64
          st1     42.00      0.00 172032.00         0    172032
    
          sda      0.00      0.00      0.00         0         0
          st1     40.00      0.00 163840.00         0    163840
    
          sda      0.00      0.00      0.00         0         0
          st1     45.00      0.00 184320.00         0    184320

    Acima está um exemplo de amostragem que nos é informado sobre o nosso dispositivo. Lembrando que no script está setado para 512 o tamanho do blocos.