Diskový oddíl / je plný díky Qmail frontě
POZOR: Tato příručka se zabývá pouze OVH RELEASE 1! Nepoužívejte stejný postup u Plesk serveru!
Jak to zjistit?
Vaše e-maily jsou blokovány, některé služby nelze restartovat (jako třeba Apache).
Následky
Plný diskový oddíl (viz
Plná Slash). Mailová fronta je příliš plná, qmail již nespravuje procesy.
Důsledky
Špatně jste nastavil /etc/tcp.smtp a váš server byl použit pro spam. Váš disk je plný. Ve frontě je příliš mnoho e-mailů a vy máte pouze jediné řešení: zařadit je znova
Řešení
Pozor! Tento zásah je delikátní a může způsobit, že mail server již nebude fungovat!
Postupujte jako zde v SSH:
# tail -f /var/log/qmail/current
@400000003f883c8c05961f54 alert: unable to append to bounce message; HELP! sleeping...
@400000003f883c96062e9a7c alert: unable to append to bounce message; HELP! sleeping...
@400000003f883ca006c73cb4 alert: unable to append to bounce message; HELP! sleeping...
# /var/qmail/bin/qmail-qstat
messages in queue: 12001
messages in queue but not yet preprocessed: 117
# df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda1 2016016 1913988 0 100% /
/dev/hda2 36977736 8967660 26131676 26% /home
none 257272 0 257272 0% /dev/shm
Poté musíte vyprázdnit adresář a začít odzačátku. Qmail jsme zastavili již dříve:
# /etc/rc.d/init.d/qmail stop
stopping qmail [OK ]
# cd /var/qmail/
# ls -l
total 32
drwxr-sr-x 2 alias qmail 4096 jui 16 20:25 alias
drwxr-xr-x 2 root qmail 4096 jui 16 20:25 bin
drwxr-xr-x 2 root qmail 4096 jui 16 20:25 boot
drwxr-xr-x 2 root qmail 4096 oct 11 00:39 control
drwxr-xr-x 3 root qmail 4096 jui 16 20:25 doc
drwxr-xr-x 10 root qmail 4096 jui 16 20:25 man
drwxr-x
11 qmailq qmail 4096 jui 16 20:25 queue
drwxr-xr-x 2 root qmail 4096 oct 11 00:39 users
# rm -rf queue
# df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda1 2016016 834556 1079048 44% /
/dev/hda2 36977736 8967664 26131672 26% /home
none 257272 0 257272 0% /dev/sh
Pro novou frontu můžeme použít:
ftp://ftp.netmeridian.com/queue-fix.tar.gz
nebo
http://pyropus.ca/software/queue-repair/queue-repair-0.9.0.tar.gz
Pro příklad použijeme qmail-repair. Zčneme obnovou a rozbalením softwareu:
[root@julien root]# mkdir /temp
[root@julien root]# cd /temp/
Před dalšími kroky otestujeme manipulaci s daným adresářem (pro vytvoření bezpečné mailové fronty):
[root@julien queue-repair-0.9.0]# ./queue_repair.py -c -s 23 --no-bigtodo .
Jestliže jde vše dobře, můžeme zkontrolovat, zda byla fronta správně převytvořena:
[root@julien queue-repair-0.9.0]# ls -l queue
total 36
drwx------ 2 qmails qmail 4096 tue 25 17:39 bounce
drwx------ 25 qmails qmail 4096 tue 25 17:39 info
drwx------ 2 qmailq qmail 4096 tue 25 17:39 intd
drwx------ 25 qmails qmail 4096 tue 25 17:39 local
drwxr-x--- 2 qmailq qmail 4096 tue 25 17:39 lock
drwxr-x--- 25 qmailq qmail 4096 tue 25 17:39 mess
drwx------ 2 qmailq qmail 4096 tue 25 17:39 pid
drwx------ 25 qmails qmail 4096 tue 25 17:39 remote
drwxr-x--- 2 qmailq qmail 4096 tue 25 17:39 todo
Nyní můžeme přejít k vytvoření mailové fronty, která bude využita mail serverem. Poté zkontrolujeme, zda je vše v pořádku.
[root@julien queue-repair-0.9.0] ./queue_repair.py -c -s 23 --no-bigtodo /var/qmail
[root@julien queue-repair-0.9.0]# ls -l /var/qmail/
Nyní již stačí restartovat qmail (nezapomeňte nastavit / pro restart qmailu).
# cd /
# /etc/rc.d/init.d/qmail start
Starting: qmail pop smtp
# echo test | mail
oles@ovh.net
# tail -f /var/log/qmail/current
@400000003f883ce426b52c0c alert: unable to append to bounce message; HELP! sleeping...
@400000003f8840a31f2624dc alert: cannot start: unable to switch to queue directory
@400000003f88425517b081ac status: local 0/10 remote 0/20
@400000003f88426f0748a59c new msg 100179
@400000003f88426f074b1e6c info msg 100179: bytes 207 from
qp 15605 uid 0
@400000003f88426f097eb3c4 starting delivery 1: msg 100179 to remote oles@ovh.net
@400000003f88426f0980da8c status: local 0/10 remote 1/20
@400000003f88426f1a6fd85c delivery 1: success: 213.186.33.73_accepted_message./Remote_host_said:_250_ok_1065894524_qp_30276/
@400000003f88426f1a7717d4 status: local 0/10 remote 0/20
@400000003f88426f1a7c4fc4 end msg 100179
Problém je tímto vyřešen.