สืบต่อจากเรื่อง การย้าย Mailman และปรับแต่งให้รองรับภาษาไทย ก่อนหน้านี้ วันนี้ระบบ mailing list มีปัญหาหลังจากการ upgrade OS โดยอีเมลอะไรก็ตามที่ส่งเข้า mailing list จะหายสาบสูญไปเลย โดยไม่มีอีเมลแจ้งบอกทั้งผู้ส่งและ moderator
ผมตรวจสอบดูแล้วก็หาสาเหตุไม่พบ และได้ลองทำการติดตั้งใหม่อีกครั้ง ปัญหาก็ยังไม่หายไป ก็เลยตัดสินใจใช้ rpm package ติดตั้ง ด้วยคำสั่ง
# yum install mailman
หลังจากติดตั้งแล้วพบว่า โครงสร้างไดเรกทอรีของ mailman กระจายอยู่ตามที่ต่างๆ ได้แก่
- /usr/lib/mailman เก็บตัวโปรแกรมหลักและไฟล์ที่ใช้ปรับแต่งระบบ
- /var/lib/mailman เก็บข้อมูลของ mailing list ต่างๆ
- /etc/mailman เก็บไฟล์ aliases ของ mailing list ต่างๆ
เมื่อโครงสร้างเปลี่ยนไปทำให้ต้องมีการตามปรับค่า config ต่างๆ ใหม่ไปด้วย
สำหรับวิธีการเพิ่มภาษาไทยนั้น ก็ยังจำเป็นจะต้องแก้ไขไฟล์ /usr/lib/mailman/Mailman/Defaults.py เช่นเดิม โดยให้เพิ่มบรรทัดต่อไปนี้ ที่กลุ่มคำสั่งเพิ่มภาษาต่างๆ ซึ่งจะอยู่ที่บริเวณท้ายสุดของไฟล์
add_language('th', _('Thai'), 'tis-620')
หลังจากนั้นแก้ไขไฟล์ /usr/lib/mailman/Mailman/mm_cfg.py ดังนี้
DEFAULT_URL_HOST = 'list.domain.com' //ปรับแก้ไขค่าเดิม
DEFAULT_EMAIL_HOST = 'list.domain.com' //ปรับแก้ไขค่าเดิม
DEFAULT_CHARSET = 'tis-620' //พิมพ์เพิ่มเติม
VERBATIM_ENCODING = ['tis-620'] //พิมพ์เพิ่มเติม
DEFAULT_SERVER_LANGUAGE = 'th' //พิมพ์เพิ่มเติม
และเนื่องจาก alias ไฟล์ของ mailman อยู่ที่ /etc/mailman/aliases และ /etc/mailman/aliases จึงต้องแก้ไขไฟล์ /etc/postfix/main.cf ด้วย
alias_maps = hash:/etc/aliases, hash:/etc/mailman/aliases
alias_database = hash:/etc/aliases, hash:/etc/mailman/aliases
หลังจากนั้นก็ทำการย้ายข้อมูลเดิมไปไว้ที่ /var/lib/mailman/archives, /var/lib/mailman/data และ /var/lib/mailman/lists ตามลำดับ แล้วก็ต้องตรวจสอบค่า permission โดยใช้คำสั่ง
/usr/lib/mailman/bin/check_perm -f
สิ่งที่สำคัญอีกประการหนึ่งคืออย่าลืมตรวจสอบว่า mailman service ได้ทำงานแล้วหรือไม่ และควรกำหนดให้เริ่มทำงานโดยอัตโนมัติทุกครั้งด้วย
ท้ายที่สุดก็จะต้องปรับแต่งค่าในไฟล์ /etc/httpd/conf.d/mailman.conf ให้เหมาะสมด้วยครับ