In this article, we upgraded Postfix to 2.2.5 via RPMs; however, if a later version is needed, and you are running Red Hat Enterprise Linux Version 3 (RHEL 3), an RPM needs to be created from source. There is a source RPM for 2.2.6 available here:
http://postfix.wl0.org/ftp/official/2.2/SRPMS/
To use the RPM, install it:
[root@s root]# rpm -i postfix-2.2.6-1.src.rpm warning: user sjmudd does not exist - using root . . . warning: group sjmudd does not exist - using root |
Make sure you trust the source of your RPM, and verify sigs if possible. Create a new spec file:
[root@s root]# cd /usr/src [root@s src]# cd redhat [root@s redhat]# ls BUILD RPMS SOURCES SPECS SRPMS [root@s redhat]# ls SOURCES make-postfix.rpm make-postfix.spec postfinger-1.29 postfix-2.0.16-20031026-multiline-greeting.patch postfix-2.2.5-vda.patch.gz postfix-2.2.6.tar.gz postfix-aliases postfix-chroot.sh postfix-dict_cdb-1.1.11-20021104.tar.gz postfix-etc-init.d-postfix postfix-files.patch postfix-get-distribution postfix-libspf2-2.2.0-5.patch postfix-libspf2.README postfix-makedefs.patch postfix-pam.conf postfix-saslauthd.conf postfix-sasl.conf postfix.spec.in README-Postfix-SASL-RedHat.txt [root@s redhat]# sh SOURCES/make-postfix.spec Creating Postfix spec file: /usr/src/redhat/SPECS/postfix.spec Checking rpm database for distribution information... - if the script gets stuck here: check and remove /var/lib/rpm/__db.00? files Distribution is: redhat-release-3ES-13.5.1 (rhel-3.0) adding LDAP support to spec file adding TLS support to spec file |
Build the RPM:
[root@s redhat]# rpmbuild -ba SPECS/postfix.spec Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.50152 + umask 022 + cd /usr/src/redhat/BUILD + LANG=C + export LANG . . . Prefix) <= 4.0-1 Checking for unpackaged file(s): /usr/lib/rpm/check-files /var/tmp/postfix-2.2.6-buildroot Wrote: /usr/src/redhat/SRPMS/postfix-2.2.6-1.rhel3.src.rpm Wrote: /usr/src/redhat/RPMS/i386/postfix-2.2.6-1.rhel3.i386.rpm Wrote: /usr/src/redhat/RPMS/i386/postfix-debuginfo-2.2.6-1.rhel3.i386.rpm Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.69667 + umask 022 + cd /usr/src/redhat/BUILD + cd postfix-2.2.6 + umask 022 + '[' -n /var/tmp/postfix-2.2.6-buildroot -a /var/tmp/postfix-2.2.6-buildroot '!=' / ']' + rm -rf /var/tmp/postfix-2.2.6-buildroot + exit 0 [root@s redhat]# |
Upgrade from 2.2.5 to 2.2.6:
# rpm -Fvh /usr/src/redhat/RPMS/i386/postfix-2.2.6-1.rhel3.i386.rpm Preparing... ########################################### [100%] 1:postfix warning: /etc/postfix/access created as /etc/postfix/access.rpmnew warning: /etc/postfix/main.cf created as /etc/postfix/main.cf.rpmnew ########################################### [100%] Shutting down postfix: [ OK ] Starting postfix: [ OK ] |
Verify the version in /var/log/maillog:
postfix-script: stopping the Postfix mail system master[1231]: terminating on signal 15 postfix-script: starting the Postfix mail system master[1887]: daemon started -- version 2.2.6, configuration /etc/postfix |