alert: unable to opendir todo/0, sleeping..hatası – Qmail kuyruğunu rebuild etmek

alert: unable to opendir todo/0, sleeping..hatası qmail kuyruğunuzda bozulma olduğunu işaret eder , genelde bu durumu /usr/local/psa/var/log/maillog dosyasındaki loglardan farkederiz. warning: trouble injecting bounce message, will try later şeklinde de hatalar görüyor iseniz yine bu duruma işarettir , çözümü için aşağıdaki işlemleri satır satır yapmanız gerekir , test edilmiştir.

1. Qmail’i durdurun,

# /etc/init.d/qmail stop

2.

# cd /var/qmail/queue
# rm -rf info intd local mess remote todo

# mkdir mess

# for i in `seq 0 22`; do
# mkdir mess/$i
# done

# cp -r mess info
# cp -r mess intd
# cp -r mess local
# cp -r mess remote
# cp -r mess todo

# chmod -R 750 mess todo
# chown -R qmailq:qmail mess todo

# chmod -R 700 info intd local remote
# chown -R qmailq:qmail intd
# chown -R qmails:qmail info local remote

3. Qmail i başlatın,

# /etc/init.d/qmail start

Hepsi bu kadar , logları izlemeye devam..

Ayhan ARDA

Qmail Mail Kuyruğu için QmHandle Kurulumu ve Kullanımı

QmHandle , Qmail kurulu serverlarda mail kuyruğunu daha kolay yönetebilmek için perl ile yazılmış bir scripttir. Kurulumu için ssh üzerinden sunucumuza root olarak giriş yapmış olmalıyız. Sonrasında aşağıdaki komut ile indirebiliriz.

wget http://sourceforge.net/projects/qmhandle/files/qmhandle-1.3/qmhandle-1.3.2/qmhandle-1.3.2.tar.gz/download

ya da http://sourceforge.net/projects/qmhandle/ adresinden yeni versiyon çıkmış olabilir diye kontrol edip indirebilir.

Sonrasında indirdiğimiz dosyayı açmamız gerekiyor. Bunun için aşağıdaki komutu kullanabilirsiniz.

tar -xvzf qmhandle-1.3.2.tar.gz

Açma işlemi tamamlandıktan sonra klassörün içine aşağıdaki komut ile giriyoruz.

cd qmhandle-1.3.2

Klasör içine girme işleminden sonra aşağıdaki komut ile kullanmaya başlayabiliriz.

./qmhandle

Şimdi bazı komutlara kısaca değinelim.

./qmhandle -s komutu kısaca kuyruk durumu hakkında istatistikler verir.

Örnek :

[root@Plesk83.alansatis.com ~]# ./qmHandle -s
Total messages: 16
Messages with local recipients: 1
Messages with remote recipients: 15
Messages with bounces: 0
Messages in preprocess: 0

./qmhandle -l kuyruktaki mailleri listeler.

./qmhandle -a kuyruktaki mailleri hemen tekrar göndermeye zorlar.

Diğer fonksiyonlar için ./qmhandle yazmanız yeterlidir.Aşağıda da görebilirsiniz.

[root@Plesk83.alansatis.com ~]# ./qmHandle
qmHandle v1.3.2
Copyright 1998-2003 Michele Beltrame

Available parameters:
-a       : try to send queued messages now (qmail must be running)
-l       : list message queues
-L       : list local message queue
-R       : list remote message queue
-s       : show some statistics
-mN      : display message number N
-dN      : delete message number N
-fsender : delete message from sender
-f’re’   : delete message from senders matching regular expression re
-Stext   : delete all messages that have/contain text as Subject
-h’re’   : delete all messages with headers matching regular expression re (case insensitive)
-b’re’   : delete all messages with body matching regular expression re (case insensitive)
-H’re’   : delete all messages with headers matching regular expression re (case sensitive)
-B’re’   : delete all messages with body matching regular expression re (case sensitive)
-t’re’   : flag messages with recipients in regular expression ‘re’ for earlier retry (note: this lengthens the time message can stay in queue)
-D       : delete all messages in the queue (local and remote)
-V       : print program version

Additional (optional) parameters:
-c       : display colored output
-N       : list message numbers only
(to be used either with -l, -L or -R)

You can view/delete multiple message i.e. -d123 -v456 -d567

Kuyruktaki mailleri silmek için  service qmail stop komutundan sonra ./qmhandle -D çalıştırmanız yeterlidir. Sonra service qmail start ile tekrar başlatmalısınız. Zaten kendiside işlemden sonra yeniden başlatmayı deneyecektir.


deferral: CNAME_lookup_failed_temporarily. (#4.4.3)/ hatası ve çözümü

deferral: CNAME_lookup_failed_temporarily._(#4.4.3)/ hatası sunucunuz isim çözümleyemediğinde qmail loglarında bu şekilde hatalar alırsınız.

Çözümü için nano /etc/resolv.conf komutu ile resolv.conf dosyanızı açıp içerisinde yer alan dns adreslerini kontrol etmeli ya da bildiğiniz farklı dns ler ile değiştirmelisiniz. Aksi durumda sürekli qmail kuyruğu şişecektir ve mail gönderimi yapamayacaksınız.

Eğer Plesk üzerine kurulu ise qmail log yolu aşağıdaki şekildedir.

/usr/local/psa/var/log/maillog

Anlık Olarak logları izlemek için aşağıdaki komutu kullanabilirsiniz.

tail -f /usr/local/psa/var/log/maillog

@40000000438ee4981e036344 delivery 3343: deferral: CNAME_lookup_failed_temporarily._(#4.4.3)/
@40000000438ee4981e03672c status: local 0/10 remote 23/255 exitasap
@40000000438ee4981e036b14 delivery 3344: deferral: CNAME_lookup_failed_temporarily._(#4.4.3)/
@40000000438ee4981e03ad7c status: local 0/10 remote 22/255 exitasap
@40000000438ee4981e03ad7c delivery 3345: deferral: CNAME_lookup_failed_temporarily._(#4.4.3)/
@40000000438ee4981e03b164 status: local 0/10 remote 21/255 exitasap
@40000000438ee4981e03b54c delivery 3346: deferral: CNAME_lookup_failed_temporarily._(#4.4.3)/
@40000000438ee4981e03b934 status: local 0/10 remote 20/255 exitasap
@40000000438ee4981e03bd1c delivery 3347: deferral: CNAME_lookup_failed_temporarily._(#4.4.3)/
@40000000438ee4981e03ccbc status: local 0/10 remote 19/255 exitasap
@40000000438ee4981e03d0a4 delivery 3349: deferral: CNAME_lookup_failed_temporarily._(#4.4.3)/
@40000000438ee4981e03d48c status: local 0/10 remote 18/255 exitasap
@40000000438ee4981e03d48c delivery 3348: deferral: CNAME_lookup_failed_temporarily._(#4.4.3)/
@40000000438ee4981e03d874 status: local 0/10 remote 17/255 exitasap

Ayhan ARDA