Sun ONE Messaging Server 6.0 安裝指南﹝適用於 Solaris 作業系統﹞ |
第 4 章
升級至 Sun ONE Messaging Server本章描述如何從 Messaging Server 5.2 升級至 6.0。
從 Messaging Server 5.2 升級至 Messaging Server 6.0 包括三個步驟。以下主題概述了此程序:
- 建立升級檔案以更新配置 (UpgradeMsg5toMsg6.pl)
- 執行升級公用程式 (do_the_upgrade.sh)
- MTA 配置 (make_mta_config_changes.sh)
- configutil 參數 (make_configutil_changes.sh)
- 備份配置 (make_backup_config_changes.sh)
- mboxlist 資料庫 (make_mboxlistdb_changes.sh)
- 移轉使用者電子信箱 (可選)
注意 在執行升級之前,請執行以下作業:
- 在 Messaging Server 5.2 所在的同一系統或不同系統上安裝並配置 Messaging Server 6.0 (依照第 2 章「安裝 Messaging Server」中的說明)。
- 使用 MTA 直接 LDAP 查找 (而不是 imsimta dirsync) 配置現有的 Messaging Server 5.2 安裝。如需更多資訊,請參閱「Sun ONE Messaging Server 6.0 管理員指南」。
建立升級檔案以更新配置本節描述如何建立特殊的升級檔案來更新 Messaging Server 6.0 系統上的配置:
簡介
執行升級公用程式從 Messaging Server 5.2 升級至 6.0 之前,您需要先執行 UpgradeMsg5toMsg6.pl Perl 程序檔 (位於 msg_svr_base/sbin 中)。
UpgradeMsg5toMsg6.pl 會比較 5.2 配置檔案和 6.0 配置檔案,並為每個配置檔案建立以下兩組檔案:*.CHANGES 檔案和 *.MERGED 檔案。
*.CHANGES 檔案和 *.MERGED 檔案在工作區目錄 /var/tmp/UpgradeMsg5toMsg6.ScratchDir 中產生。
*.CHANGES 檔案顯示 Messaging Server 5.2 和 Messaging Server 6.0 之間的重要配置檔案差異。這些檔案重點顯示僅在 Messaging Server 6.0 中發現的配置實體、來自 Messaging Server 5.2 但在 Messaging Server 6.0 中被淘汰的配置實體以及僅在 Messaging Server 5.2 中發現的配置實體。請注意,並非所有 *.CHANGES 檔案都會顯示不同版本的配置檔案之間的差異,而且並非所有配置檔案都會產生 *.CHANGES 檔案。
*.MERGED 檔案合併了 Messaging Server 5.2 和 6.0 的配置值和設定。通常,如果符合以下條件,Messaging Server 6.0 版將保留 Messaging Server 5.2 的配置參數值:
表 4-1 列出產生 *.MERGED 或 *.CHANGES 檔案的配置檔案:
執行 UpgradeMsg5toMsg6.pl Perl 程序檔
若要執行 UpgradeMsg5toMsg6.pl 以建立各組檔案 (透過這些檔案可以更新配置),請執行以下步驟:
- 如果 Messaging Server 5.2 和 6.0 版不在同一機器上,將 Messaging Server 5.2 server-root 目錄傳送、擷取並複製到 Messaging Server 6.0 系統中。如果兩個伺服器版本安裝在同一機器上,則可以跳過此步驟。
- 根據 5.2 版的 msg-instance 和 6.0 版的 msg_svr_base 執行 UpgradeMsg5toMsg6.pl 升級程序檔 (位於 msg_svr_base/sbin 中)。例如:
其中 /usr/sunone/server5/msg-budgie 為 5.2 版 Messaging Server 的 msg-instance,/opt/SUNWmsgsr 為 6.0 版 Messaging Server 的 msg_svr_base。
注意 Messaging Server 6.0 不支援多個實例。如果具有 Messaging Server 5.2 版的多個實例,則只能選擇一個實例升級至 Messaging Server 6.0。此外,多次執行升級公用程式以嘗試移轉多個實例只會導致配置被覆寫。
*.MERGED 和 *.CHANGES 檔案 (如表 4-1 所述) 將建立。
- 請仔細查閱 *.MERGED 檔案;如果您不想使用建議的設定,則必須手動調整設定。
此公用程式無法更新 Messenger Express 自訂檔案。因此,您需要手動變更這些檔案,以保留來自 Messaging Server 5.2 的相關資訊,並加入來自 Messaging Server 6.0 安裝的所有新資訊。
執行升級公用程式本節描述 do_the_upgrade.sh 公用程式 (位於 /var/tmp/UpgradeMsg5toMsg6.ScratchDir 中),該公用程式是由四個子程序檔組成的 shell 程序檔。本節包含以下主題:
- 簡介 (do_the_upgrade.sh)
- MTA 配置 (make_mta_config_changes.sh)
- configutil 參數 (make_configutil_changes.sh)
- 備份配置 (make_backup_config_changes.sh)
- mboxlist 資料庫 (make_mboxlistdb_changes.sh)
簡介
do_the_upgrade.sh 公用程式由四個 shell 程序檔組成,這些程序檔透過 *.MERGED 檔案更新 Messaging Server 6.0 系統中 MTA 配置、configutil 參數、備份參數以及 mboxlist 資料庫的配置和檔案目錄位置。
您可以執行 do_the_upgrade.sh 公用程式,也可以單獨執行組成 do_the_upgrade.sh 公用程式的一個或多個程序檔 (make_mta_config_changes.sh、make_configutil_changes.sh、make_backup_config_changes.sh 和 make_mboxlistdb_changes.sh)。
執行 do_the_upgrade.sh 公用程式:
執行 do_the_upgrade.sh 程序檔後,您可以繼續參考 5.2 版分割區路徑 (雖然您無法移除 Messaging Server 5.2 server-root 目錄),也可以將 5.2 版儲存分割區手動移至相應的 Messaging Server 6.0 目錄位置。您應該在重新啟動 Messaging Server 之前執行此步驟。
MTA 配置
作為 do_the_upgrade.sh 公用程式組成部分的 MTA 升級配置子程序檔稱為 make_mta_config_changes.sh (位於 /var/tmp/UpgradeMsg5toMsg6.ScratchDir 中)。
make_mta_config_changes.sh 程序檔對 *.MERGED 伺服器配置檔案進行備份和重新命名,並將其移至 Messaging Server 6.0 檔案目錄結構中的原始名稱和位置。
重新命名並移動檔案完成後,此程序檔會自動執行 imsimta cnbuild 指令,以重新編譯 MTA 配置。
注意 如果要將 MTA 中繼機器從 Messaging Server 5.2 升級至 Messaging Server 6.0,只需執行 make_mta_config_changes.sh 和 make_backup_config_changes.sh (如備份配置所述) 即可。
configutil 參數
作為 do_the_upgrade.sh 公用程式組成部分的 configutil 升級配置子程序檔稱為 make_configutil_changes.sh 程序檔 (位於 /var/tmp/UpgradeMsg5toMsg6.ScratchDir 中)。
make_configutil_changes.sh 程序檔合併了 msg.conf 和 local.conf 檔案中的新參數或更新後的參數。如果 Messaging Server 6.0 的 configutil 參數中未指定預設值,則所有 Messaging Server 5.2 的值將在 Messaging Server 6.0 版中繼續使用。
備份配置
作為 do_the_upgrade.sh 公用程式組成部分的備份升級配置子程序檔稱為 make_backup_config_changes.sh 程序檔 (位於 /var/tmp/UpgradeMsg5toMsg6.ScratchDir 中)。
make_backup_config_changes.sh 程序檔升級備份服務 (例如 backup-groups.conf 檔案中的服務) 的配置。
mboxlist 資料庫
作為 do_the_upgrade.sh 公用程式組成部分的 mboxlist 資料庫升級配置子程序檔稱為 make_mboxlistdb_changes.sh 程序檔 (位於 /var/tmp/UpgradeMsg5toMsg6.ScratchDir 中)。
make_mboxlistdb_changes.sh 程序檔傳送 5.2 版的 mboxlist 資料庫並將其升級成 Messaging Server 6.0 目錄結構。此程序檔將四個 *.db 檔案 (folder.db、quota.db、peruser.db 和 subscr.db) 從 Messaging Server 5.2 系統上的 server-root/msg-instance/store/mboxlist 複製到 Messaging Server 6.0 系統上的 msg_svr_base/data/store/mboxlist 中。
移轉使用者電子信箱本節描述如何將使用者電子信箱從 Messaging Server 5.2 系統移轉到 Messaging Server 6.0 系統 (可選)。如果 Messaging Server 5.2 和 6.0 安裝在同一機器上,則不必移轉使用者電子信箱。此外,如果可以繼續存取儲存使用者電子信箱的 5.2 機器,則無需將使用者電子信箱移轉至 6.0 機器。只有在對 Messaging Server 5.2 機器不再擁有存取權的情況下,才需要移轉使用者電子信箱。
若要以線上方式將使用者電子信箱資料從 Messaging Server 5.2 移至 6.0,請執行本節所述的步驟。移動資料時無需終止 Messaging Server。
本節概述以下主題:
需求
移轉的唯一需求就是儲存的內容能夠在新舊郵件傳送伺服器上同時執行。
移轉說明
若要將使用者電子信箱從 5.2 系統移轉至 6.0 系統,請:
- 事先通知使用者,在資料移轉程序完成之前,他們將無法存取電子信箱。請確定使用者在資料移轉開始之前均已登出其郵件系統。
- 將 5.2 郵件儲存中所有使用者項目的 mailUserStatus 使用者 LDAP 屬性從 active 變更為 hold,以將進來的使用者郵件保留在保留佇列中,並防止他人透過 IMAP、POP 和 HTTP 存取電子信箱。
如需有關 mailUserStatus 的更多資訊,請參閱「Sun ONE Messaging Server Schema Reference Manual」。
- 確定在此程序期間,5.2 和 6.0 版 Messaging Server 都已啟動並正在執行。
- 將所有使用者項目中的 mailHost 屬性從舊的郵件伺服器變更為新的郵件伺服器。
若要如此,請使用以下 ldapsearch 指令找到需要修改其 mailHost 屬性的使用者項目:
ldapsearch -h ldap.siroe.com -b "o=internet" \ "(&(objectclass=maildomain)(mailHost=oldmail.siroe.com))"
然後使用 ldapmodify 指令將各個項目相應地變更為新的郵件伺服器。
如需有關 mailhost 的更多資訊,請參閱「Sun ONE Messaging Server Schema Reference Manual」。
- 在舊的系統 (oldmail.siroe.com) 中,將使用者項目劃分成均等的群組 (每行一個使用者名稱) 並放入使用者檔案中。
- 將使用者資料從 Messaging 5.2 郵件儲存移至 Messaging Server 6.0 郵件儲存中。如果屬於以下情況,您只需執行本步驟:
- 您要從 Windows 移轉至 Unix 或從 Unix 移轉至 Windows。
- 您不想一次移轉整個郵件儲存。
- 您需要重新命名您的使用者,包括 uid、網域名稱以及預設網域變更。
完成此步驟的方法如下:使用 imsbackup 公用程式備份 Messaging Server 5.2 郵件儲存,然後使用 imsrestore 公用程式將郵件儲存復原到 Messaging Server 6.0 中。
如果選擇使用 imsbackup 與 imsrestore 公用程式的移轉方法來傳送儲存資料,則分割區路徑不應對映至 Messaging Server 5.2 分割區,而且 mboxlist 升級步驟不應執行。由升級程序檔產生的 make_configutil_changes.sh 程序檔會自動將分割區路徑設定為對映至 Messaging Server 5.2 分割區。需要進行手動變更。此外,您不應執行 make_mboxlistdb_changes.sh 程序檔。依預設,do_the_upgrade.sh 程序檔會自動執行,因此您必須手動將其移除。
請參閱「Sun ONE Messaging Server Reference Manual」,以取得有關 imsbackup 和 imsrestore 公用程式之語法和用法的更多資訊。
在 newmail.siroe.com 中執行以下指令:
rsh "ipaddress_of_oldmail.siroe.com /server-root/bin/msg/store/bin/imsbackup \
-f- -u user_file" | /opt/SUNWmsgsr/sbin/imsrestore -f- -cy -n -v1其中 user_file 是包含使用者電子信箱名稱的使用者檔案 (如步驟 5 所述)。
- 使用這些使用者檔案,執行多個並行運作的備份和復原階段作業 (10 到 15 個),以最大程度的加快復原到新郵件儲存中的速度。
- 將 Messaging Server 6.0 設定為系統新的預設郵件傳送伺服器。
將 oldmail.siroe.com 的 A 記錄變更為指向 newmail.siroe.com (此伺服器負責先前寄存在 oldmail.siroe.com 上的網域)。
其中 user 是使用者 ID,domain 是該使用者所在的網域。
- 確保使用者用戶端指向新的郵件伺服器。
升級完成後,透過使用者的郵件用戶端程式讓使用者指向新的伺服器 (在此範例中,讓使用者從 oldmail.siroe.com 指向 newmail.siroe.com)。
或者使用 MMP,藉此,使用者無需將其用戶端直接指向新的郵件伺服器;MMP 將從儲存在 LDAP 使用者項目中的 mailHost 屬性中獲取此資訊,並自動將用戶端重新導向至新的伺服器。