07-03
2010

Postfix, stocker sa queue en Ram

Tags: PostFix | Queue | Ram | RamDisk
Si vous souhaitez stocker la queue de vos mails en ram pour diminuer un peu les I/O, cette solution, bien que très dangereuse peu vous aider. Le principe est de monter une partition dans la RAM et de l'utiliser pour gérer votre queue. Toutefois, en cas de redémarrage du serveur, vos données seront supprimées, alors faites attention à ce que vous faites. Une limite sur mon Kernel (OVH), m'impose une limite de 4Mo pour ce type de partition, ce qui va très bien, si comme moi, vous n'avez jamais plus d'une dizaine de mail en queue. Commencez par créer votre nouvelle partition, qui fera donc 4Mo:
mkfs -q /dev/ram1 4096
mkdir -p /pqueue
mount /dev/ram1 /pqueue
Vérifiez que tout est là:
df -h | grep ram
/dev/ram1             3.9M   46K  3.7M   2% /pqueue
Vous pouvez aussi prévoir d'effectuer cette opération au démarrage du serveur, dans le cas contraire, PostFix ne redémarrera pas. Nous allons maintenant déplacer la queue de postfix sur cette nouvelle partition. (Afin d'éviter tout soucis, j'ai, pour ma part, conservé un backup dans le dossier de postfix).
# Copie du dossier de queue
cp -Rp /var/spool/postfix/defer /pqueue
# Backup du dossier
mv /var/spool/postfix/defer /var/spool/postfix/backup_defer
# Création d'un lien symbolique
ln -s /pqueue/defer /var/spool/postfix/defer
# Mise à jour des permissions
chown -R postfix:root /var/spool/postfix/defer
# Redémarrage de postfix
/etc/init.d/postfix restart
# Vérification des permissions et des bons répertoire
postfix check
Si vous avez effectué quelque chose de mal, PostFix pourra vous répondre par ce genre de message :
Mar  7 19:46:27 ara postfix/postfix-script[10638]: warning: not owned by postfix: /var/spool/postfix/defer
Ceci veut dire que les permissions ne sont pas correctes. Référence pour la création du système de fichier : Linux RAM Disk: Creating A Filesystem In RAM

 

 

3 Commentaires pour ce billet.

 

 

  1. Bonjour,
    merci pour cet article très intéressant, je m'en suis inspiré pour déplacer mon répertoire deferred, et j'ai le même message quand je fais un postfix check, ce qui me semble "normal" car on crée un lien symbolique qui appartient à root et donc /var/spool/postfix/defer n'appartient plus à postfix, est-ce grave ou a-t-on un moyen de faire ça plus proprement et ne plus avoir ce warning ?
    Merci.

  2. Bon, je me réponds à moi-même, finalement il suffit de faire un chown -h sur le lien symbolique : chown -h postfix:root defer, pour ne plus avoir le warning.

  3. @Jean-Michel : Oui c'était plutôt grave. Mais ça se fixe sans trop de soucis.

 

Votre commentaire