Nedávno jsem musel upgradovat Sendmail verze 8.13 na nejnovější verzi 8.15 na CentOS 5. Pokud někdo plánuje upgradovat Sendmail na svém počítači se systémem Linux, můžete to udělat zde.
Chcete-li začít, musíte si stáhnout nejnovější verzi (8.15, v době psaní tohoto článku) z oficiálních webových stránek Sendmail.
Krok 1:Zálohování existujících binárních a konfiguračních souborů sendmail
V první řadě je třeba zálohovat aktuální konfigurační soubory sendmailu, spouštěcí skripty, binární soubor sendmail, aliasy, databázi aliasů a aliasy domény (pokud existují), jak je uvedeno níže:
[root@mailserver]#cp /usr/sbin/sendmail /usr/sbin/sendmail.old (daemon)
[root@mailserver]#cp /etc/aliases /etc/aliases.old (aliases file)
[root@mailserver]#cp /etc/aliases.db /etc/aliases.db.old (aliases database file)
[root@mailserver]#cp /etc/sendmail.cf /etc/sendmail.cf.old (configuration file)
[root@mailserver]#cp /etc/sendmail.mc /etc/sendmail.mc.old (configuration file)
[root@mailserver]#cp /etc/sendmail.cw /etc/sendmail.cw.old (domain aliases - if any)
[root@mailserver]#cp /etc/rc.d/sendmail /etc/rc.d/sendmail.old (startup script)
Poznámka: Binární umístění Sendmailu se liší operační systém od operačního systému, ale obvykle je v /usr/sbin nebo /usr/lib.
Krok 2:Zastavení existujícího démona Sendmail
Pomocí spouštěcího skriptu zastavte démona sendmail.
[root@mailserver]# /etc/init.d/sendmail stop
[or]
[root@mailserver]# service sendmail stop
Krok 3:Získejte nejnovější zdroj ze sendmail.org a rozbalte jej.
[root@mailserver]# wget ftp://ftp.sendmail.org/pub/sendmail/sendmail.8.15.1.tar.gz
[root@mailserver]# gzip -cd bind-9.1.1.tar.gz | tar xvf -
[root@mailserver]# cd sendmail-8.15.1/
[root@mailserver sendmail-8.15.1]#
Krok 4:Zkompilujte zdroj pomocí dostupného skriptu Build
Od sendmail-8.15.1 adresáře, spusťte „sh ./Build ” ke kompilaci zdroje.
[root@mailserver sendmail-8.15.1]# sh ./Build
Krok 5:Vytvořte nový konfigurační soubor Sendmail
Pokud chcete použít stávající konfigurace, přejděte ke kroku 6, jinak pokračujte.
Vytvořte Sendmail.cf pomocí makroprocesoru m4 a zkopírujte jej do /etc/mail/
Z cf/cf/ adresář, zkopírujte libovolný .mc soubor nejlépe odpovídá vašemu systému jako sendmail.mc . Dále jej odpovídajícím způsobem upravte, jak je vysvětleno v cf/README .
[root@mailserver sendmail-8.15.1]# cd cf/cf
[root@mailserver cf]# cp generic-linux.mc sendmail.mc
Spusťte níže uvedený příkaz a vytvořte nový sendmail.cf pomocí makroprocesoru m4.
[root@mailserver cf]#m4 ../m4/m4.cf sendmail.mc > sendmail.cf
[nebo]
[root@mailserver cf]# sh ./Build sendmail.cf Using M4=/usr/bin/m4 make: `sendmail.cf' is up to date. [root@mailserver cf]#
Nyní zkopírujte vygenerovaný soubor sendmail.cf na /etc/mail/sendmail.cf
[root@mailserver cf]# cp sendmail.cf /etc/mail/sendmail.cf
Krok 6:Použití stávajících konfigurací Sendmail
Zkopírujte /etc/mail/sendmail.mc soubor do vašeho zdroje sendmail cf adresář.
[root@mailserver cf]# cp /etc/mail/sendmail.mc sendmail.mc
Vytvořte sendmail.cf pomocí existujícího sendmail.mc konfigurace, jak je uvedeno níže:
[root@mailserver cf]#m4 ../m4/m4.cf sendmail.mc > sendmail.cf
[nebo]
[root@mailserver cf]# sh ./Build sendmail.cf Using M4=/usr/bin/m4 make: `sendmail.cf' is up to date. [root@mailserver cf]#
Nyní zkopírujte vygenerovaný soubor sendmail.cf na /etc/mail/sendmail.cf
[root@mailserver cf]# cp sendmail.cf /etc/mail/sendmail.cf
Krok 7:Instalace programu Sendmail Binary
Nainstalujte binární soubor vytvořený v kroku 4. Tím se nainstaluje binární soubor do /usr/sbin a nainstaluje také manuálové stránky.
[root@mailserver sendmail-8.15.1]#sh ./Build install
Krok 8:Aktualizace databáze aliasů
Aktualizujte aliases.db soubor spuštěním newaliases
[root@mailserver sendmail-8.15.1]# newaliases
/etc/aliases: 102 aliases, longest 121 bytes, 3517 bytes total
Krok 9:Spusťte démona Sendmail
Spusťte démona sendmail, jak je znázorněno níže:
[root@mailserver sendmail-8.15.1]# /etc/init.d/sendmail start
Starting sendmail: [ OK ]
Starting sm-client: [ OK ]
Krok 10:Ověřte verzi Sendmail
Pomocí níže uvedeného příkazu telnet ověřte aktualizovanou verzi Sendmailu.
[root@mailserver sendmail-8.15.1]# telnet 0 25
Trying 0.0.0.0...
Connected to 0 (0.0.0.0).
Escape character is '^]'.
220 mailserver ESMTP Sendmail 8.15.1/8.15.1; Thu, 25 Jun 2015 13:43:25 +0530