السَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُهُ
بِسمِ اللَّهِ الرَّحمٰنِ الرَّحيمِ

FreeBSD: Solusi Upgrade Postfix 2.6.1 Ke 2.6.2

Sejak kepindahan saya tahun lalu dari Slackware ke FreeBSD, saya tidak pernah mengalami kesulitan saat melakukan update/upgrade aplikasi FreeBSD via ports. Setiap hari saya lakukan update ports dengan tiga langkah berikut ini:

  1. portsnap fetch update
  2. portaudit -Fda
  3. portmaster -a

Biasanya berjalan lancar tanpa campur tangan manual. Masalah terjadi saat Postfix merilis versi 2.6.2 dan Postfix yang terinstall diserver masih 2.6.1.

Saat melakukan upgrade ke Postfix 2.6.2 muncul masalah seperti dibawah ini:

===>>> Port directory: /usr/ports/mail/postfix
        ===>>> This port is marked IGNORE
        ===>>> wait for a new VDA patch that works with 2.6.2

        ===>>> If you are sure you can build it, remove the
               IGNORE line in the Makefile and try again.

===>>> Update for postfix-2.6.1,1 failed
===>>> Aborting update

Sebenarnya bukan Postfix-nya yang bermasalah tapi aplikasi pendukungnya, yaitu patch Postfix VDA saat ini masih belum ada port-nya untuk versi 2.6.2. Jika tidak menggunakan patch ini tentu tidak akan bermasalah. Alasan saya menggunakannya adalah agar Postfix mampu membatasi kapasitas mailbox user (quota).

Saya kunjungi website Postfix VDA ternyata sudah ada patch untuk versi 2.6.2 ini tapi FreeBSD masih belum mengupdate ports-nya. Menunggu? Tidak, saya mau yang up-to-date! Googling dong, cari tau. Jangan nanya doang, basi! Nih jawabannya.

Oke, saya ikuti petunjuk diatas.

Edit file Makefile di /usr/ports/mail/postfix, saya menggunakan vi, sesuaikan jika Anda menggunakan editor lain:

# vi /usr/ports/mail/postfix/Makefile

Cari bagian seperti ini:

.if defined(WITH_VDA)
IGNORE=                 wait for a new VDA patch that works with ${PORTVERSION}
PATCH_SITES+=           http://vda.sourceforge.net/VDA/
PATCHFILES+=            postfix-${PORTVERSION}-vda-ng.patch.gz

Nonaktifkan option IGNORE pada baris 199 dengan memberi tanda pagar (#) didepannya sehingga akan menjadi seperti dibawah ini:

.if defined(WITH_VDA)
#IGNORE=                 wait for a new VDA patch that works with ${PORTVERSION}
PATCH_SITES+=           http://vda.sourceforge.net/VDA/
PATCHFILES+=            postfix-${PORTVERSION}-vda-ng.patch.gz

Setelah itu, download patch Postfix VDA versi 2.6.2:

# wget wget http://vda.sourceforge.net/VDA/postfix-2.6.2-vda-ng.patch.gz
--2009-07-08 13:17:48--  http://vda.sourceforge.net/VDA/postfix-2.6.2-vda-ng.patch.gz
Resolving vda.sourceforge.net... 216.34.181.96
Connecting to vda.sourceforge.net|216.34.181.96|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 12661 (12K) [application/x-gzip]
Saving to: `postfix-2.6.2-vda-ng.patch.gz'

100%[================================================>] 12,661      10.5K/s   in 1.2s

2009-07-08 13:17:51 (10.5 KB/s) - `postfix-2.6.2-vda-ng.patch.gz' saved [12661/12661]

FINISHED --2009-07-08 13:17:51--

Kemudian periksa signature MD5 dan SHA256-nya serta ukuran filenya:

# md5 postfix-2.6.2-vda-ng.patch.gz
MD5 (postfix-2.6.2-vda-ng.patch.gz) = 648f09acd31125c99d1bc36860e21910

# sha256 postfix-2.6.2-vda-ng.patch.gz
SHA256 (postfix-2.6.2-vda-ng.patch.gz) = 2e49d9320a38d5d7ca246320127186cfacc3aced9a47aeced61151ee6eb620a4

# ls -l postfix-2.6.2-vda-ng.patch.gz
-rw-r--r--  1 root  wheel  12661 Jun 16 18:58 postfix-2.6.2-vda-ng.patch.gz

Salin file postfix-2.6.2-vda-ng.patch.gz ke /usr/ports/distfiles/postfix/ kemudian edit file /usr/ports/mail/postfix/distinfo, tambahkan informasi MD5, SHA256 dan ukuran file patch tersebut diatas.

Sebelum:

MD5 (postfix/postfix-2.6.2.tar.gz) = 1f0edbd521d2b0473626f4d61e8bb4eb
SHA256 (postfix/postfix-2.6.2.tar.gz) = 025acf080bbe279cbc6e8e6806ecd0f99af41c8ca384fcb2f7631988f73d5f7c
SIZE (postfix/postfix-2.6.2.tar.gz) = 3323255

Sesudah:

MD5 (postfix/postfix-2.6.2.tar.gz) = 1f0edbd521d2b0473626f4d61e8bb4eb
SHA256 (postfix/postfix-2.6.2.tar.gz) = 025acf080bbe279cbc6e8e6806ecd0f99af41c8ca384fcb2f7631988f73d5f7c
SIZE (postfix/postfix-2.6.2.tar.gz) = 3323255
MD5 (postfix/postfix-2.6.2-vda-ng.patch.gz) = 648f09acd31125c99d1bc36860e21910
SHA256 (postfix/postfix-2.6.2-vda-ng.patch.gz) = 2e49d9320a38d5d7ca246320127186cfacc3aced9a47aeced61151ee6eb620a4
SIZE (postfix/postfix-2.6.2-vda-ng.patch.gz) = 12661

Setelah semuanya siap, lakukan upgrade.

# portmaster postfix

Beres dah..!

# /usr/local/etc/rc.d/postfix restart
postfix/postfix-script: stopping the Postfix mail system
postfix/postfix-script: starting the Postfix mail system

# tail -f /var/log/maillog
Jul  8 13:33:05 velosi postfix/postfix-script[6910]: stopping the Postfix mail system
Jul  8 13:33:05 velosi postfix/master[6849]: terminating on signal 15
Jul  8 13:33:05 velosi postfix/postfix-script[6988]: starting the Postfix mail system
Jul  8 13:33:05 velosi postfix/master[6989]: daemon started -- version 2.6.2, configuration /usr/local/etc/postfix

Incoming search terms:

  • freebsd (8)
  • diffimg graphviz gentoo (4)
  • update freebsd (4)
  • postfix on freebsd (2)
  • postfix (2)
  • slackware atau freebsd (2)
  • membatasi quota user postfix (1)
  • membatasi quota mail pada postfix (1)
  • membatasi quota inbox user postfix (1)
  • membatasi mailbox size postfix (1)

One Response to “FreeBSD: Solusi Upgrade Postfix 2.6.1 Ke 2.6.2”

  1. bali Florist says:

    trims nya tas solusinya?

    ada lg gk,solusi laenya?

Leave a Reply