安裝 Calendar Server 之後,啟動 Calendar Server 服務之前,您必須對其進行配置。依如下順序執行這兩個配置程式是很重要的:
目錄準備程序檔 (comm_dssetup.pl)目錄準備程序檔配置Directory Server for Calendar Server 6 和
Messaging Server 6。其透過設定新的 LDAP 模式、索引和配置資料來準備 Directory Server。
Calendar Server 配置程式 (csconfigurator.sh)
Calendar Server 配置程式可配置 Calendar Server。在第 3 章, Calendar Server 配置程式 (csconfigurator.sh)中有說明。
本章包括目錄準備程序檔和以下主題:
如果您已安裝舊版的 Calendar Server 或 Messaging Server,則可能需要將 LDAP 目錄項目從 Schema 1 遷移至 Schema 2。
閱讀完「Sun Java System Communications Services 6 2005Q4 Schema Migration Guide」之前,請勿執行本章中說明的配置公用程式。該指南會指導您選擇執行配置公用程式的時間和選項。
在舊版的 Java Enterprise System 中,此公用程式隨附於 Messaging Server 和 Calendar Server,無需獨立安裝。但是,從 Java Enterprise System 2005Q1 開始,程序檔已成為可獨立安裝的共用元件。
若要安裝目錄準備程序檔,請選擇以下方法之一:
Java Enterprise System 安裝程式 – 在元件選取面板上選取目錄準備程序檔。(選取 Directory Server 的同時,會自動選取目錄準備程序檔。)
如果您是從舊版 Java Enterprise System 升級的,並且未使用 Java Enterprise System 安裝程式,則請下載以下修補程式:
Solaris SPARC |
118245 與 118242 |
Solaris x86 |
118256 與 118243 |
Linux |
僅提供 118247 |
備註 – 僅在第一次修補公用程式時需要修補程式 118242 和 118243。如果您應用了修補程式 118245 或 118246 的更高版本,則無需再應用修補程式 118242 或 118243。 |
安裝後,目錄準備程序檔位於以下目錄中:
Solaris: |
/opt/SUNWcomds/sbin |
Linux: |
/opt/sun/comms/dssetup/sbin |
本小節包括在執行目錄準備程序檔之前需要瞭解的資訊,並包含以下主題:
目錄準備程序檔將執行以下三個步驟:
收集您選擇的公用程式選項。
如需此步驟需要的特定資訊清單,請參閱需要收集的資訊。
根據您選擇的選項產生將用於修改 LDAP 目錄的 shell 程序檔和 LDIF 檔案。如果您沒有使用 Sun 產品作為目錄伺服器,或已自訂 Directory Server,請在此處停止程序而不執行 shell 程序檔。如需進一步資訊,請參閱之後的Directory Server 注意事項。
執行從您選擇的選項中所建立的程序檔。LDAP 也會隨之修改。
在每個步驟的最後,該公用程式都會詢問您是否要繼續。在執行第三個步驟之前,不會對 LDAP 目錄進行任何變更。
以下是 LDAP 目錄的注意事項清單:
執行目錄準備程序檔之前,必須安裝目錄伺服器,對其進行配置並執行。
您必須在目錄伺服器所在的每台機器上都執行目錄準備程序檔。
如果您日後增加額外的機器 (例如複製機器),請同樣對該機器執行目錄準備程序檔。
如需 Calendar Server 62005Q4 支援的 LDAP 目錄伺服器清單,請參閱「Sun Java System Communications Services 2005Q4 Release Notes」中的第 1 章「Sun Java System Calendar Server 6 2005Q4 Release Notes」。
如果您已自訂 LDAP 目錄,則應注意以下事項:
如果已為某些屬性建立索引,您可能需要在執行目錄準備程序檔之後重新為這些屬性建立索引。
如果您已增加其他 .ldif 檔案 (模式定義),它們應該不會受到影響,因此不需要任何動作。但是,請在執行目錄準備程序檔之前備份自訂模式定義檔案。
對於包括以上列出的前兩種自訂在內的所有自訂,請在目錄準備程序檔產生程序檔之後與實際更新 LDAP 目錄之前將其停止。然後檢查程序檔,以評估它所建議的動作將如何影響 LDAP 目錄。在對 LDAP 執行程序檔之前,請執行您認為必要的任何動作以保護自訂。
如果您沒有使用 Sun 產品作為目錄伺服器,則部署 Calendar Server 最簡單的解決方案是將目錄伺服器升級至 Sun Java System Directory Server。
如需有關安裝和配置 Directory Server 的資訊,請參閱 http://docs.sun.com/coll/1316.1 和 http://docs.sun.com/coll/1419.1。
或者,您可以使用目錄準備程序檔 (無需實際執行該程序檔) 產生的程序檔以瞭解需要為非 Sun LDAP 目錄進行的更新。
在目錄準備程序檔第一個步驟中,需要有關您的 Directory Server 的資訊。透過蒐集下表中所示的資訊進行準備。為協助您追蹤此資訊,請使用附錄 A目錄配置工作表。
所需的資訊項目 |
預設值 |
---|---|
根目錄路徑名稱 |
/var/opt/mps/serverroot |
要使用哪個 Directory Server 實例?(如果不只一個。) |
不適用 |
目錄管理員辨別名稱 (DN) |
"cn=DirectoryManager" |
目錄管理員密碼 |
不適用 |
Directory Server 要用於使用者/群組資料嗎?(yes),或者僅用於配置資料?(no) |
yes |
使用者和群組根目錄字尾 (如果上一個問題為「yes」) |
“o=usergroup” |
模式版本?(挑選其中之一) 1 Schema 1 1.5 Schema 2 相容模式 2 Schema 2 原生模式 [如需有關如何選擇模式的更多資訊,請參閱關於模式選擇。如果您已安裝模式的一個版本,並且要升級至更高版本,請在執行此公用程式之前參閱「Sun Java System Communications Services 6 2005Q4 Schema Migration Guide」。] |
1 |
根目錄字尾 (如果使用 Schema 1 或 Schema 2 相容模式) [如果選擇 Schema 1 或 1.5,您將需要 DC 樹狀結構。如果 DC 樹狀結構尚不存在,則目錄準備程序檔僅建立根目錄字尾節點,而不建立 DC 樹狀結構的其餘部分。您必須自己建立 DC 樹狀結構的其餘部分。] |
o=internet |
更新模式? [如果此 Directory Server 用於使用者/群組資料,您必須具有包含模式檔案的 config 目錄。] |
是 |
增加 Directory Server 索引?(增加 icsCalendar、icsCalendarOwned) [如果您回答 yes,則目錄準備程序檔將為 Messaging Server、Calendar Server 和 Communications Server 建立索引,即使您不會將它們全部使用。] |
是 |
對應於目錄準備程序檔模式版本選擇 1。
Sun LDAP Schema 2 相容模式
對應於模式版本選擇 1.5。
Sun LDAP Schema 2 原生模式
對應於模式版本選擇 2。
如果您仍在嘗試確定要使用的模式,為獲得進一步說明,請參閱「Sun Java Enterprise System Technical Overview」、「Sun Java Enterprise System 2005Q4 Installation Guide for UNIX」與「Sun Java System Communications Services 6 2005Q4 Schema Migration Guide」。
下表列出了選擇適合您的安裝之模式版本時可參考的簡單原則。
如果要使用 Schema 2,則必須安裝和配置 Access Manager。
請勿使用 Access Manager 主控台管理使用者。如需有關如何管理使用者的資訊,請參閱第 14 章, 管理使用者和資源。
為屬性建立索引可改善搜尋演算法的效能。該程序檔用於索引屬性。如果您選擇索引屬性,程序檔不僅為 Calendar Server 增加索引,還為 Messaging Server 和 Communications Express 增加索引。因此,為一個產品執行了索引後,則無需再為其他產品重新執行索引。事實上,如果您嘗試對相同屬性再次執行索引,將不會發生任何變化。但是僅當索引尚未存在時,該程序檔才會呼叫 db2index 以便為每個屬性建立索引。
下表列出了目錄準備程序檔為其建立索引的所有屬性,並按字尾類別分組。該表還列出了為每個屬性建立的索引的類型。如需有關 Directory Server 索引建立的更多資訊,請參閱 http://docs.sun.com/coll/1316.1 和 http://docs.sun.com/coll/1419.1。
字尾 |
被建立索引的屬性 |
增加的索引類型 |
---|---|---|
使用者/群組 |
|
pres,eq,approx,sub |
mailAlternateAddress |
pres,eq,approx,sub |
|
mailEquivalentAddress |
pres,eq,approx,sub |
|
member |
eq |
|
cosspecifier |
pres |
|
使用者/群組 (用於 Access Manager – Schema 2) |
inetDomainBaseDN |
pres,eq |
sunPreferredDomain |
pres,eq |
|
associatedDomain |
pres,eq |
|
o |
pres,eq |
|
sunOrganizationAlias |
pres,eq |
|
DC 樹狀結構 (用於 Schema 1) |
inetDomainBaseDN |
pres,eq |
inetCanonicalDomainName |
pres,eq |
|
個人通訊錄 (PAB) |
memberOfManagedGroup |
pres,eq |
memberOfPAB |
pres,eq |
|
memberOfPABGroup |
pres,eq |
|
un |
eq |
|
icsCalendar |
pres,eq,approx,sub |
|
icsCalenarOwned |
pres,eq,approx,sub |
|
新的 PAB |
displayname |
pres,eq,sub |
MemberOfPiBook |
eq |
|
MemberofPiGroup |
eq |
如果您決定自己增加進一步索引,則可從 Directory Server 文件中找到有關增加索引的說明。
本小節包含以下主題:
在安裝 Directory Server 的伺服器上,以超級使用者 (root) 身份登入或成為超級使用者。
如有必要,請啟動 Directory Server。
變更至 /opt/SUNWcomds/sbin 目錄。
或者,如果需要,可從 /opt/SUNWcomds/lib 中找到 .zip 檔案
在無訊息模式或互動式模式中,執行目錄準備程序檔。如需更多步驟,請參閱執行目錄準備程序檔或執行目錄準備程序檔。
若要執行此程序檔,請使用做為共用元件提供的或是使用 Java Enterprise System 安裝程式自動安裝的 Perl 版本。安裝完畢後,該 Perl 位於以下目錄:
ds_svr_base/bin/slapd/admin/bin/perl
若要在無訊息模式中執行目錄準備程序檔,請發出 Perl 指令,後跟使用comm_dssetup.pl 語法中所示語法的選項字串。所有選項引數均為必需。表 2–1 說明了這些選項。
公用程式建立以下 LDIF 檔案和 shell 程序檔以更新 LDAP 目錄索引和模式:
/var/tmp/dssetup_timestamp.ldif /var/tmp/dssetup_timestamp.sh
公用程式是否透過執行新的程序檔更新 Directory Server 視您發送的選項值而定。如果您已選擇不繼續更新,則可先檢查程序檔並做出任何所需的修改,稍後再執行實際更新。
以下是在無訊息模式中執行所需的所有選項:
perl comm_dssetup.pl -i yes|no -R yes|no -c DirectoryServerRoot -d DirectoryInstance -r DCTreeSuffix -u UserGroupSuffix -s yes|no -D DirectoryManagerDN -w DirectoryManagerPassword -b yes|no -t 1|1.5|2 -m yes|no [-S PathtoSchemaFiles] |
若要在互動模式中執行目錄準備程序檔,請在不使用任何引數的情況下執行程序檔,然後輸入您選擇的所提問題。
以下清單依面板順序提供有關如何使用互動模式程序檔的說明。
歡迎和簡介面板
# cd /opt/SUNWcomds/sbin # ./comm_dssetup.pl Welcome to the Directory Server preparation tool for Sun Java System Communications Services. (Version 6.3 Revision 0.1) This tool prepares your directory server for use by the communications services which include Messaging, Calendar and their components. The logfile is /var/tmp/dssetup_YYYYMMDDHHSS Do you want to continue [y]: |
按下 Enter 繼續,或鍵入 no,然後按下 Enter 結束。
Directory Server 的安裝根目錄面板
Please enter the full path to the directory where the Sun Java System Directory Server was installed. Directory server root [/var/opt/mps/serverroot] |
指定 Directory Server 的安裝根目錄的位置,或按下 Enter 接受預設值。
Directory Server 實例面板
如果該機器上有多個 Directory Server 實例,則程式會將其列出並要求您選擇一個。
Please select a directory server instance from the following list: [1] slapd-varrius Which instance do you want [1]: |
輸入與您的選擇對應的數字,然後按下 Enter。或者,不輸入數字,直接按下 Enter 接受預設。
目錄管理員辨別名稱 (DN) 面板
此面板有兩部分,請輸入目錄管理員 DN 和目錄管理員的密碼。
首先,程序檔要求您輸入目錄管理員的辨別名稱 (DN):
Please enter the directory manager DN [cn=Directory Manager]: |
目錄管理員 DN (預設為 cn=Directory Manager) 是負責組織樹狀結構中使用者和群組資料的管理員。請確定您在此程序檔中指定的目錄管理員 DN 與您為安裝 Directory Server 和配置 Calendar Server 而設定的 DN 相同。
請輸入目錄管理員 DN,或按下 Enter 接受預設值。
然後程序檔會要求您輸入目錄管理員的密碼。
Password: |
請輸入目錄管理員密碼並按下 Enter。
程式會檢查 Directory Server 是否正在執行並偵聽連接埠 389 (預設連接埠)。
如果成功,將顯示偵測到的版本,如以下範例中所示:
Detected DS version 5.2 |
如果不成功,將通知您無法偵測到正在執行或偵聽連接埠 389 的 Directory Server,並會引導您修正此問題,然後才允許您繼續。程序檔結束。以下範例顯示這種情況下的輸出:
Directory Server not running or not listening to port 389. Detected DS version 0.0 Please correct the problem and re-run this script. |
[使用者和群組 Directory Server] 面板
Will this directory server be used for users/groups [Yes]: |
如果此目錄實例僅用於儲存配置資料,請輸入 No,或按下 Enter 接受預設值。
如果您輸入 No,則還必須對儲存使用者和群組資料的目錄實例執行此程序檔。(請在執行配置程式 csconfigurator.sh 之前執行此作業。)
如果您回答 yes,則必須為組織樹狀結構指定使用者和群組基底字尾。
使用者和群組基底字尾面板
Please enter the Users/Groups base suffix [o=usergroup]: |
使用者和群組基底字尾是 LDAP 組織樹狀結構的頂層項目。確定在此選擇的字尾與為 Directory Server、Calendar Server 和 Access Manager 指定的字尾相同。
[模式類型] 面板
There are 3 possible schema types: 1-schema 1 for systems with Calendar or Messaging 5.x data 1.5-schema 2 compatibility for systems with Calendar or Messaging 5.x data that has been converted with the Schema Migration Utility commdirmig 2-schema 2 native for systems using Access Manager Please enter the Schema Type (1, 1.5, 2) [1]: |
輸入模式類型,或按下 Enter 接受預設值。
若要使用 Schema 2 (選項 1.5 或 2),則必須安裝和配置 Access Manager。否則,目錄準備程序檔將會終止。您必須在重新執行目錄準備程序檔之前,安裝 Access Manager。
[網域元件 (DC) 樹狀結構基底字尾] 面板
如果您選擇 Schema 1 或 Schema 2 相容模式,則系統會要求您提供 DC 樹狀結構基底字尾。如果您選擇 Schema 2 原生模式,則系統不會詢問此問題。
Please enter the DC Tree base suffix [o=internet]: |
在之前說明的 [模式類型面板] 中,如果您選擇 Schema 1 或 Schema 2 相容模式,系統將要求您提供 DC 樹狀結構基底字尾。如果您選擇 Schema 2 原生模式,則系統不會詢問此問題。
DC 樹可鏡射本機 DNS 結構,系統會使用 DC 樹作為包含使用者資料項目和群組資料項目的組織樹的索引。DC 樹狀結構基底字尾是 DC 樹狀結構上頂層項目的名稱。
輸入字尾,或按下 Enter 接受預設值。
[系列問題] 面板
這個後續面板會提出一系列有關對您的 LDAP 進行更新的問題。
更新模式檔案
此時程式會檢查您的模式是否具有正確的模式元素。如果您的模式缺少某些元素,本程式將輸出以下訊息:
Detected bad schema elements in 99user.ldif. It is recommended that you update the schema. Do you want to update the schema files [yes]: |
回答 Yes 以將所需的新元素增加至您的模式。在每次安裝新版 Calendar Server 或 Messaging Server 時,均需使用新的模式檔案來更新目錄。
如果您想延遲更新模式檔案,請回答 No。
配置新的索引
如果上一步您選擇更新模式,系統將詢問您是否希望配置新的索引。如需有關為屬性建立索引的更多資訊,請參閱屬性索引。
Do you want to configure new indexes [yes]: |
若同意配置索引,請按下 Enter。
如果您已為相同屬性執行此建立索引步驟,請回答 no。
立即重新索引
您可以選擇現在建立索引或者稍後建立索引。如果您選擇推遲建立索引,則請在方便時重新執行該程序檔並選擇建立索引。建立索引可能需要很長的時間,但是 Directory Server 仍可發揮其功能,也就是說,它在建立索引期間並未處於唯讀模式。
Reindex now [yes]? |
如果您想稍後再建立索引,請回答 no,否則,請按下 Enter 接受預設值。
[設定摘要] 面板
目錄準備程序檔在更新 Directory Server 配置之前,會顯示您的設定摘要,然後詢問您是否繼續。
Here is a summary of the settings that you chose: Server Root : /var/opt/mps/serverroot/ Server Instance : slapd-varrius Users/Groups Directory : yes Update Schema : yes Schema Type : 1 DC Root : o=internet User/Group Root : dc=red,dc=sesta,dc=com Add New Indexes : yes Reindex New Indexes Now : yes Directory Manager DN : cn=Directory Manager Now ready to generate a shell script and ldif file to modify the Directory. No changes to the Directory Server will be made this time. Do you want to continue [Y]: |
如果您在執行目錄準備程序檔中選擇 Schema 2 原生模式,則 DC 根將與您為使用者/群組根輸入的值相同。
若要變更任何設定,請輸入 no,然後重新執行程序檔。
如果您想繼續,請按下 Enter。目錄準備程序檔會產生一個 LDIF 檔案和一個 shell 程序檔。其建立的檔案名稱如下:
/var/tmp/dssetup_timestamp.ldif /var/tmp/dssetup_timestamp.sh |
如果選擇繼續,程式運行時將列印訊息。以下是您將看到的輸出範例:
Generating files... Checking to see if Suffixes need to be added Checking to see that uid uniqueness plugins are turned off Adding indexes Adding Indexes for User/group Tree (backend:userRoot) Checking indexes for member No new indexes required Checking indexes for mailAlternateAddress No new indexes required Checking indexes for mail No new indexes required Checking indexes for mailEquivalentAddress No new indexes required Checking indexes for cosspecifier No new indexes required Adding Indexes for DC Tree (backend:internetdb2) Checking indexes for inetCanonicalDomainName No new indexes required Checking indexes for inetDomainBaseDN No new indexes required Adding Indexes for PAB Tree (backend:pabdb2) Checking indexes for memberOfPAB No new indexes required Checking indexes for icsCalendar No new indexes required Checking indexes for un No new indexes required Checking indexes for memberOfPABGroup No new indexes required Checking indexes for icsCalendarOwned No new indexes required Checking indexes for memberOfManagedGroup No new indexes required Adding Indexes for New PAB Tree (backend:PiServerDbdb2) Checking indexes for MemberOfPiBook No new indexes required Checking indexes for MemberofPiGroup No new indexes required Checking indexes for displayname No new indexes required Checking to see if DN needs to be created for suffixes Generating ldif for installer metadata Generating ldif for Adding schema for installer metadata Generating ldif for updating DN for cn=CommServers,o=comms-config The following files have been created: /var/tmp/dssetup_20041209114027.sh /var/tmp/dssetup_20041209114027.ldif Running /var/tmp/dssetup_20041209114027.sh will make changes to the Directory. You can run this file now or at a later time Ready to execute the script now. |
執行程序檔
Do you want to continue [yes]: |
按下 Enter 接受預設設定 (yes)。dssetup_timestamp.sh 程序檔針對 LDAP 目錄執行。如果您不希望立即執行該程序檔,請輸入 No 結束。如果結束,您可以稍後執行 /var/tmp/dssetup_ timestamp.sh 程序檔。
以下是程序檔執行時產生的文字輸出範例:
Running /var/tmp/dssetup_20041209114027.sh -D "cn=Directory Manager" -j /var/tmp/dssetup_20041209114027.pw Stopping Directory Server Updating Schema files... Copying 20subscriber.ldif Copying 50ns-delegated-admin.ldif Copying 50ns-mail.ldif Copying 50ns-mlm.ldif Copying 50ns-msg.ldif Copying 50ns-value.ldif Copying 55ims-ical.ldif Copying 56ims-schema.ldif Copying 70sun-schema2.ldif Copying 71sun-am.ldif Copying 60iplanet-calendar.ldif Copying 50ns-iabs.ldif Copying 98ns-dummy-uwc.ldif Copying 70delgated-admin.ldif Copying /var/tmp/99user_20041209114027.ldif to /var/opt/mps/serverroot/slapd-varrius/config/schema/99user.ldif Starting Directory Server Applying ldif file /var/tmp/dssetup_20041209114027.ldif modifying entry cn=schema modifying entry cn=schema modifying entry cn=CommServers,o=comms-config Done Applying ldif file /var/tmp/dssetup_20041209114027.ldif rejects to /var/tmp/dssetup_20041209114027.ldif.rej status = 0 Successful Completion. Consult /var/tmp/dssetup_20041209114027.log for details |
如果您因任何原因決定不執行目錄準備程序檔產生的程序檔,以下指示可讓您手動更新 Sun Java System Directory Server 的模式檔案。
如果手動更新 LDAP 目錄模式,之後又升級 Calendar Server,則必須再次手動更新 LDAP 伺服器模式。如果之前已手動更新模式,則 Calendar Server 將無法自動更新該模式。
安裝 Calendar Server 62005Q4。
如果 Calendar Server 正在執行,請將其停止。
如果 Directory Server 正在執行,請將其停止。
將 60iplanet-calendar.ldif 檔案複製到執行目錄伺服器的機器上的以下目錄:
dir_svr_base/slapd-hostname/config/schema |
其中 dir_svr_base 是 Directory Server 安裝目錄,hostname 用來識別機器。
如果您希望像配置程式一樣索引屬性,請在此時進行。如需配置程式為其建立索引的屬性清單,請參閱屬性索引。
重新啟動 Directory Server。如果您收到物件識別碼 (OID) 錯誤,請參閱解決 LDAP 模式目錄中發生衝突的 OID。
透過執行 csconfiguration.sh 程式來配置 Calendar Server。
如需有關配置 Calendar Server 的說明,請參閱第 3 章, Calendar Server 配置程式 (csconfigurator.sh)。
如果 LDAP 模式目錄包含發生衝突的 OID,Directory Server 將不知道使用哪個 OID,並會傳回錯誤訊息。例如,以下訊息指示 icsCalendarUser 物件類別的發生衝突的 OID:
[24/Apr/2004:23:45:28 -0700] dse - The entry cn=schema in file 99user.ldif is invalid, error code 20 (Type or value exists) - object class icscalendaruser: The name does not match the OID. Another object class is already using the name or OID. [24/Apr/2004:23:45:28 -0700] dse - Please edit the file to correct the reported problems and then restart the server.
在您安裝 Calendar Server 62005Q4 並且系統上已安裝有較舊的發行版本的 Calendar Server (已動態更新 LDAP 伺服器模式 99user.ldif 檔案) 時,就會發生此問題。
若要解決發生衝突的 OID,請執行以下兩個步驟:
編輯 99user.ldif 檔案並移除較舊的 OID。針對 Calendar Server 62005Q4,下表列出了可能導致問題的特定 OID。
物件類別 |
舊的 OID |
新的 OID |
---|---|---|
icsCalendarUser |
2.16.840.1.113730.3.2.141 |
1.3.6.1.4.1.42.2.27.9.2.44 |
icsCalendarResource |
2.16.840.1.113730.3.2.143 |
1.3.6.1.4.1.42.2.27.9.2.45 |
icsCalendarDomain |
2.16.840.1.113730.3.2.144 |
1.3.6.1.4.1.42.2.27.9.2.4 |
編輯完 99user.ldif 檔案之後,請重新啟動 Directory Server。