segunda-feira, 28 de julho de 2008

Apagando a fila do Qmail (2)

No post anterior passei uma dica de como apagar a fila do Qmail, agora venho melhorar o procedimento:


1 - Capturar os IDs das mensagens que desejamos apagar. Criar o arquivo /root/spam


2 - Capturar TODAS as mensagens que estão na fila do qmail. Criar o arquivo /root/fila

cd /var/qmail/queue

find . -type f > /root/fila


3 - Apagar as mensagens desejadas da fila

cd /var/qmail/queue

while read id ; do rm -f $(grep $id /root/fila) ; done < /root/spam


Essa pequena mudança produz uma diferença de horas para apagar mensagens, quando temos centenas de milhares de mensagens na fila.

sexta-feira, 25 de julho de 2008

Dica: Apagando a fila do Qmail

Nesse post irei mostrar como eu faço pra apagar a fila do Qmail. Esse Qmail roda num linux (centos). Vamos supor que a conta de e-mail spam@dominio.com.br está enviando uma porrada de emails e ta fudendo a fila.

Primeiro temos que parar os seviços send e smtpd do Qmail:

svc -d /service/smtpd
svc -d /service/send

O serviço smtpd é meio chatinho para parar, dai use pkill -u qmaill e pkill -u qmailr (matar os processos dos usuários internos do Qmail)

Verifique se os serviços estão parados com svstat /service/* (os serviços estarão como DOWN).

Cuidado: Não avance nas outras etapas se os seviços smtpd e send não estejam DOWN.

Com os serviços parados iremos capturar os IDs dos e-mails que estão na fila e queremos apagar:

cd /var/qmail/bin

./qmail-qread | grep spam@dominio.com.br | awk -F '#' '{ print $2 }' | awk '{ print $1 }' > /root/spam

Nesse caso foi capturado os IDs dos emails que spam@dominio.com.br estava enviando. Foi criado o arquivo /root/spam

Agora vamos para o diretório /var/qmail/queue para capturar os caminhos dos arquivos que são gerados dentro do qmail. Os arquivos tem o mesmo nome dos IDs capturados anteriormente.

cd /var/qmail/queue

for i in $(cat /root/spam ); do find . -name $i >> /root/spam2 ; done

Foi criado um outro arquivo /root/spam2 com todos os caminhos, nesse arquivo teria entradas desse tipo:

./remote/0/104259
./info/0/104259
./mess/0/104259
./remote/0/105294
./info/0/105294
./bounce/105294

Veja que os nomes dos arquivos são iguais aos IDs. Dê um cat em /root/spam (arquivo com os IDs)

Para apagar usei esse comando:

cd /var/qmail/queue

for i in $(cat /root/spam2); do rm -rf $i; done

Agora é so levantar os serviços:

svc -u /service/send
svc -u /service/smtpd


quarta-feira, 23 de julho de 2008

Java-plugin Centos 5.2 Firefox 3

Instalação do Plugin Java no Firefox 3 no Centos 5.2

1 - Download jre-6u7-linux-i586-rpm.bin em http://java.com/en/download/linux_manual.jsp no diretório /usr/java


2 - Extrair os arquivos:

chmod a+x jre-6u-linux-i586-rpm.bin

./jre-6u-linux-i586-rpm.bin

rpm -iv jre-6u-linux-i586.rpm

yum install compat-libstdc++-33


3 -Criar link Simbólico:

cd ~/.mozilla/plugins

ln -s /usr/java/jre1.6.0_07/plugin/i386/ns7/libjavaplugin_oji.so .


terça-feira, 22 de julho de 2008

Dicas: YUM

1 - Plugin para dar prioridade aos repositórios:

CentOS-4:
yum install yum-plugin-priorities

CentOS-5:

yum install yum-priorities
Edite o arquivo /etc/yum/pluginconf.d/priorities.conf

Insira as linhas abaixo:

[main]
enabled=1
Agora é so editar os repositórios com a seguinte linha:

priority=N

Por exemplo:

[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4
priority=1

Para habilitar os plugins edite o arquivo /etc/yum.conf e insira:
plugins=1

2 - Plugins:

  • /FastestMirror: yum plugin to determine and use the fastest CentOS mirror (CentOS 4 and 5 )

  • /ProtectBase: yum plugin that prevents external repositories from overwriting CentOS packages ( CentOS 4 and 5 )

  • /Priorities: yum plugin that allows assigning priorities from 1 to 99 to yum repositories.


3 - Repositórios:

Aqui tem vários repositórios para o Centos:

segunda-feira, 21 de julho de 2008

Cygwin

Dica: Cygwin

Excelente emulador de linux para Windows. Cygwin é um ambiente linux-like para Windows. Com ele pode-se usar um shell bash por exemplo, e também usar outros comandos linux.

Para baixar clique aqui.

quinta-feira, 17 de julho de 2008

Testando Adaptador USBSerial no Ubuntu

1 - Plug o adaptador na USB;

2 - Abra outro console e verifique com o comando "udevmonitor" se aparece dentre outras linhas essa:

UDEV [1197270418.950251] remove /class/tty/ttyUSB0 (tty)
.
.
.
UEVENT[1197270420.983105] add /class/usb_device/usbdev3.19 (usb_device)

3 - Para identificar o dispositivo, vamos observar a class listada acima, neste caso /class/usb_device/usbdev3.19.

# udevinfo -a -p /class/usb_device/usbdev3.19

ATTRS{product}=="USB-Serial Controller"
ATTRS{manufacturer}=="Prolific Technology Inc."
.
.
.
ATTRS{bNumConfigurations}=="1"
.
.
.
ATTRS{bConfigurationValue}=="1"

Aparecerá as linhas acima.

4 - use o comando statserial /dev/ttyUSB0 para verificar se tem alguma coisa plugada na serial.