本章將介紹已知的執行期間問題。
自本文件在 Solaris 9 12/02 Documentation CD 上和 Solaris 9 12/02 Installation CD 上的「Installation Kiosk」中發行之後,本章中已新增下列執行期間錯誤說明。
如果 ocfserv 終止,而且顯示被鎖定,即使當插入或移除智慧卡時,系統仍然保持在鎖定狀態。
執行遠端登入至已終止 ocfserv 程序的電腦上。
成為超級使用者。
在一個終端機視窗中輸入以下指令來終止 dtsession 處理。
# pkill dtsession |
智慧卡主控台中的「編輯配置檔案」功能表項目無法編輯位於 /etc/smartcard/opencard.properties 中的智慧卡配置檔案。如果選取該功能表項目,便會顯示出一條警告,指明若非是技術支援人員的要求,否則不要繼續。
解決方法:請勿使用智慧卡主控台中的「編輯配置檔案」功能表項目。如需智慧卡配置資訊,請參閱 "Solaris Smartcard Administration Guide"。
如果您使用中文語言環境在 SunTM LX50 上啟動一般桌上管理系統環境 (CDE) 桌面階段作業,在啟動時執行的 CDE 應用程式可能提供 root-window 輸入法樣式,而不是預期的 over-the-spot 輸入法樣式。
解決方法:在 /usr/dt/config/Xsession.d/0020.dtims 程序檔的結尾新增 sleep 1 行,並啟動新的 CDE 桌面階段作業。
CDE 桌面環境中的可移除式媒體自動執行功能已暫時從 Solaris 9 12/02 作業環境移除。
解決方法:若要使用 CD-ROM 或其他可移除式媒體容體的自動執行功能,您必須執行以下其中一種作業:
從可移除式媒體檔案系統的頂層執行 volstart 程式。
依照 CD 隨附的說明從 CDE 之外存取。
如果從指令行啟動 dtmail 時指定了 FontList 選項,則 dtmail 將在與 IMAP 伺服器連接後當機。請參閱下面的範例。
/usr/dt/bin/dtmail -xrm "Dtmail*FontList: -*-r-normal-*:" |
以下的錯誤訊息會顯示出來。
分段錯誤 |
此問題在 C 和 ja 語言環境中均會發生。
解決方法:在從指令行啟動 dtmail 時,請勿指定 FontList 選項。
如果您嘗試在任何 Solaris 9 12/02 Unicode 或 UTF-8 語言環境中讀取包含多個長文字行的電子郵件訊息,則 CDE 郵件程式 (dtmail) 看似掛起。訊息不會立即顯示。
解決方法:請選擇以下其中一種解決方法。
放大 dtmail 信箱視窗到 132 行。
執行下列步驟來停用「複雜文字版面配置」功能。
成為超級使用者。
變更目錄到系統的語言環境目錄。
# cd /usr/lib/locale/locale-name |
在上面的範例中,locale-name 是指系統的 Solaris 9 12/02 Unicode 或 UTF-8 語言環境名稱。
重新命名語言環境版面配置引擎類別。
# mv LO_LTYPE LO_LTYPE- |
在將任何修補程式套用到該語言環境版面配置引擎之前,請先將語言環境版面配置引擎類別重新命名為其原始名稱 (LO_LTYPE)。
在您從桌面刪除最後一個項目之後, 當您同步處理您的掌上型裝置時,該項目會從掌上型裝置中復原回桌面。此類您可能予以刪除、然後又復原之項目的例子有:您的「日曆」上的最後一個約會或「位址管理員」中的最後一個位址。
解決方法:在同步化之前,請以手動方式從掌上型裝置刪除最後一個項目。
如果您在 PDA 裝置及 Solaris CDE 之間交換多位元組資料,則這兩個環境中的資料可能會遭到毀壞。
解決方法:在執行 SolarisTM PDASync 應用程式之前,請先使用 PDA 備份公用程式,備份您個人電腦上的資料。如果您意外地進行了多位元組資料交換並毀損了該資料,請從備份中復原您的資料。
您在啟動具有服務分割區的 Sun LX50,且其上安裝有 Solaris 9 12/02(x86 平台版)作業環境。系統向您提供了按 F4 功能鍵以啟動服務分割區的選擇,但是,按 F4 會使螢幕變為空白,並且系統無法啟動服務分割區。
解決方法: 請勿在顯示「BIOS 啟動螢幕」時按 F4 鍵。逾時之後,將顯示「目前磁碟分割區資訊」螢幕。選取「零件號碼」欄位中與 type=DIAGNOSTIC 對應的數字,然後按 Return 鍵。系統會啟動服務分割區。
在基於 UltraSPARC II 系統的 Solaris 9 12/02 作業環境中,並不總是產生伴隨不可更正的記憶體錯誤訊息的 CP 事件訊息。這些系統包括 Sun EnterpriseTM 10000 與 Sun Enterprise 6500/6000/5500/5000/ 4500/4000/3500/3000 系統。這造成識別失效 CPU 所需的某些資訊不一定會出現。
解決方法:如需有關此問題的最新資訊,請造訪 SunSolve 網站 (http://sunsolve.sun.com)。
Solaris WBEM Services 2.5 常駐程式找不到寫入 com.sun.wbem.provider 介面或 com.sun.wbem.provider20 介面的供應程式。 即使您為寫入這些介面的供應程式建立一個 Solaris_ProviderPath 實例,Solaris WBEM Services 2.5 常駐程式仍然找不到該供應程式。
解決方法:若要啟用該常駐程式來尋找這類供應程式,請停止 Solaris WBEM Services 2.5 常駐程式再重新啟動。
# /etc/init.d/init.wbem stop # /etc/init.d/init.wbem start |
如果使用 javax
API 來研發供應程式,則無需停止並重新啟動 Solaris WBEM Services 2.5 常駐程式。Solaris WBEM Services 2.5 常駐程式會動態識別 javax
供應程式。
如果您選擇使用 com.sun 應用程式設計介面而不是 javax
應用程式設計介面來研發 WBEM 軟體,則僅 CIM 遠端方法調用 (RMI) 可以得到完全支援。其他通訊協定(例如 XML/HTTP)無法保證可以正常地執行 com.sun 應用程式設計介面。
下表所示為可以在 RMI 之下成功調用但會在 XML/HTTP 下失敗的調用範例。
方法調用 |
錯誤訊息 |
---|---|
CIMClient.close() |
NullPointerException |
CIMClient.execQuery() |
CIM_ERR_QUERY_LANGUAGE_NOT_SUPPORTED |
CIMClient.getInstance() |
CIM_ERR_FAILED |
CIMClient.invokeMethod() |
XMLERROR: ClassCastException |
Solaris 管理主控台裝載和共用工具無法修改 / (root)、/usr 和 /var 等系統重要檔案系統的裝載選項。
解決方法:請選擇以下其中一種解決方法。
使用帶有 remount 選項的 mount 指令。
# mount -F file-system-type -o remount,additional-mount-options \ device-to-mount mount-point |
使用帶有 -remount 選項的 mount 指令所進行的裝載屬性修改不是永久性的。 另外,未在先前指令的 additional-mount-options 部份指定的所有裝載選項,都會繼承由系統所指定的預設值。 如需更多資訊,請參閱 mount_ufs(1M) 線上援助頁。
編輯 /etc/vfstab 檔案中適當的項目來修改檔案系統裝載屬性,然後重新啟動系統。
當記憶體的餘量不足時,會顯示下列錯誤訊息:
CIM_ERR_LOW_ON_MEMORY |
如果通用資訊模型 (CIM) 物件管理員在執行時記憶體不足,則無法增加更多項目。您必須重設「CIM 物件管理員系統訊息庫」。
解決方法:若要重設「CIM 物件管理員系統訊息庫」,請執行以下步驟。
成為超級使用者。
停止 CIM 物件管理員。
# /etc/init.d/init.wbem stop |
移除 JavaSpacesTM 日誌目錄。
# /bin/rm -rf /var/sadm/wbem/log |
重新啟動 CIM 物件管理員。
# /etc/init.d/init.wbem start |
在重設 CIM 物件管理員系統訊息庫時,您會遺失資料儲存中的所有專用定義。 您必須使用 mofcomp 指令來重新編譯包含這些定義的 MOF 檔案。請參閱下面的範例。
# /usr/sadm/bin/mofcomp -u root -p root-password your-mof-file |
如果 Solaris 容體管理程式有鏡像的根 (/) 檔案系統,且在其中檔案系統未從磁柱 0 起始,則您附加的所有子鏡像均不可從磁柱 0 起始。
如果嘗試向子鏡像未從磁柱 0 起始的鏡像附加一個從磁柱 0 起始的子鏡像,則系統會顯示以下錯誤訊息。
無法將有標籤的子鏡像附加到無標籤的鏡像中 |
解決方法:請選擇以下其中一種解決方法。
確定根檔案系統和另一子鏡像的容體均從磁柱 0 起始。
確定根檔案系統和另一子鏡像的容體均未從磁柱 0 起始。
依預設,JumpStart 安裝程序從磁柱 0 和位於磁碟上其他地方的根 (/) 檔案系統開始交換。一般的系統管理從磁柱 0 的磁碟片段 0 起始。將根在磁碟片段 0 但非磁柱 0 上的預設 JumpStart 安裝鏡像到從磁柱 0 磁碟片段 0 開始的典型輔助磁碟時,會產生問題。在嘗試連接第二個子鏡像時,此鏡像會產生錯誤訊息。如需有關 Solaris 安裝程式預設動作的更多資訊,請參閱「Solaris 9 安裝指南」。
如果使用 metadetach 指令從鏡像中移除子鏡像,則可能無法重新附加此子鏡像。此問題的發生是因為在您拆離子鏡像後,鏡像已自動調整大小。
解決方法:在使用 metadetach 指令拆離子鏡像之前,向您要拆離的子鏡像附加一個同樣大小的子鏡像。
如果在實體上從系統中移除經軟式分割的磁碟然後以新磁碟取代它,則 metareplace -e 指令無法啟用軟式分割區。無論您在發出 metareplace -e 指令前是否使用 metarecover 指令來啟用軟式分割區,此故障都可能會發生。
解決方法:在新磁碟上重新建立軟式分割區。
如果軟式分割區是鏡像或 RAID 5 的一部份,則可使用不帶 -e 選項的 metareplace 指令來以新軟式分割區取代舊軟式分割區。
# metareplace dx mirror or RAID 5 old_soft_partition new_soft_partition |
如果您遇到下列情況,metahs -e 指令可能會失敗。
在使用 metaverify 測試公用程式時,不需停機便可直接更換的裝置出現問題(例如人為錯誤)。
在複合裝置出現錯誤時,Solaris 容體管理程式軟體試圖啟動不需停機便可直接更換的裝置。不需停機便可直接更換的裝置以 broken 標示。
系統當機。在同一位置以新磁碟取代包含不需停機便可直接更換裝置的失效磁碟。
系統啟動後,Solaris 容體管理程式軟體不識別新的不需停機便可直接更換裝置。
metahs -e 指令用於在新磁碟上啟用不需停機便可直接更換的裝置。
以下的訊息會顯示出來。
警告: md: d0: 不需停機便可直接更換裝置 發生開啟錯誤(不可用) |
此故障的發生是因為 Solaris 容體管理程式軟體在內部不識別交換到同一實體位置的新不需停機便可直接更換磁碟。 Solaris 容體管理程式軟體繼續顯示已不在系統中的磁碟裝置 ID。
未知此故障有出現在 Photon 或儲存器附件上,這些裝置在磁碟更換時會變更裝置號碼。
解決方法:請選擇以下其中一種解決方法。
執行以下步驟以更新 Solaris 容體管理程式狀態資料庫中不需停機便可直接更換的磁碟之裝置 ID。
成為超級使用者。
輸入以下指令以更新不需停機便可直接更換的磁碟之裝置 ID。
# metadevadm -u logical-device-name |
輸入以下指令以使不需停機便可直接更換的新磁碟可用。
# metareplace -e logical-device-name |
執行以下步驟以管理系統上的不需停機便可直接更換的裝置及不需停機便可直接更換的裝置儲存區。
成為超級使用者。
輸入以下指令以刪除不需停機便可直接更換的磁碟片段項目。
# metahs -d hsphot-spare-pool-number logical-device-name |
輸入以下指令,以在同一位置,以正確的裝置 ID 建立新的不需停機便可直接更換的磁碟片段項目。
# metahs -a hsphot-spare-pool-number logical-device-name |
您不可以使用以 Solaris 容體管理程式軟體配置的磁碟機取代失效的磁碟機。取代磁碟機對 Solaris 容體管理程式軟體必須是新的。如果您在實體上將磁碟從 Photon 上的一個介面槽移至另一個介面槽,則 metadevadm 指令會失敗。在磁碟片段的邏輯裝置名稱不再存在時,會發生此故障。然而,磁碟的裝置 ID 會保留在複合裝置中。以下的訊息會顯示出來。
偵測到未命名的裝置。 請執行 'devfsadm && metadevadm -r 來解決。 |
此時您可以存取處於新位置的磁碟。然而,您可能需要使用舊邏輯裝置名稱來存取磁碟片段。
解決方法:在實體上將磁碟機移回其原始介面槽。
如果移除並取代系統實體磁碟,然後使用 metarecover -p -d 指令將適當軟式分割區特定資訊寫入磁碟,則會導致開啟故障。指令不會更新複合裝置資料庫名稱空間,以反映磁碟裝置識別的變更。此情況會導致在磁碟上建立的每一個軟式分割區發生開啟故障。以下的訊息會顯示出來。
開啟錯誤 |
解決方法:在新磁碟上建立軟式分割區,而不要使用 metarecover 指令回復軟式分割區。
如果軟式分割區是鏡像或 RAID 5 的一部份,則可使用不帶 -e 選項的 metareplace 指令來以新軟式分割區取代舊軟式分割區。
# metareplace dx mirror or RAID 5 old_soft_partition new_soft_partition |
如果您在兩個 IP 節點之間配置多個 IP 通道,並啟用 ip_strict_dst_multihoming 或其他 IP 過濾器,可能會導致資料封包遺失。
解決方法:請選擇以下其中一種解決方法。
先在兩個 IP 節點之間配置一個單一的通道。使用帶 addif 選項的 ifconfig 指令將位址加入通道。
請勿在兩個 IP 節點之間的通道上啟用 ip_strict_dst_multihoming。
如果解除鎖定某一鎖定的 CDE 階段作業,您快取的所有 Kerberos 版本 5 (krb5) 憑證可能會被移除。其結果是您可能無法存取多種系統公用程式。這個問題可能會出現在下列情況下。
在 /etc/pam.conf 檔案中,您系統的 dtsession 服務依預設配置為使用 krb5 模組。
您鎖定您的 CDE 階段作業,然後嘗試解除階段作業的鎖定。
如果發生此問題,系統會顯示以下錯誤訊息。
鎖定螢幕: PAM-KRB5 (auth): 在以 host/host-name 確認 TGT 時出錯: 重播快取記憶體代碼的許可權被拒 |
解決方法:向 /etc/pam.conf 檔案中加入下列非 pam_krb5 dtsession 項目。
dtsession auth requisite pam_authtok_get.so.1 dtsession auth required pam_unix_auth.so.1 |
/etc/pam.conf 檔案中包含有這些項目時,依預設,pam_krb5 模組不會執行。
Solaris 9 12/02 作業環境會將已鎖定帳戶作為逾期或不存在的帳戶處理。其結果是,cron、at 以及 batch 公用程式不能在鎖定帳戶上排定工作。
解決方法: 若要讓已鎖定帳戶接受 cron、at 或 batch 工作,請將已鎖定帳戶 (*LK*) 的密碼欄位變更成字串 NP(意思是無密碼)。
如果您嘗試在執行 Solaris 9 12/02 作業環境的系統上使用 Veritas 容體管理程式執行各種工作,則 vxddladm addjob 或 vxddladm addsupport 公用程式可能會產生核心傾印。
解決方法:請執行以下步驟。
成為超級使用者。
確認系統上存在 /var/ld/ld.config 檔案和 /usr/bin/crle 公用程式。
在終端機視窗鍵入下列指令。
# /usr/bin/cp /var/ld/ld.config /var/ld/ld.config.save # /usr/bin/crle -E LD_LIBRARY_PATH=/usr/lib # appropriate-vxddladm-command # /usr/bin/mv /var/ld/ld.config.save /var/ld/ld.config |
在 iPlanetTM Directory Server 5.1 Collection(Solaris 版本)中,標題為 DocHome 的連結與各獨立書籍之間的連結不能使用。如果選取這些連結,您的瀏覽器會顯示「未找到」錯誤。
解決方法:如要在您系統上的 iPlanet Directory Server 5.1 文件之間導航,請移至 iPlanet Directory Server 5.1 Collection(Solaris 版本)網頁 (http://docs.sun.com)。 按一下您要檢視的文件連結。
如果您移除了 SUNWsdocs 套裝軟體,便無法成功移除其他文件套裝軟體。這個問題的產生,是因為 SUNWsdocs 套裝軟體是和其他文件集合一起安裝,且為瀏覽器的進入點。
解決方法:如果您已經移除 SUNWsdocs 套裝軟體,請重新自文件媒體安裝 SUNWsdocs 套裝軟體,然後移除其他的文件套裝軟體。
在 Solaris 9 12/02 作業環境以及其他基於 UNIX 的系統上,無法在下列歐洲語言環境中存取 Solaris 9 12/02 Documentation 1 of 2 CD 上的 PDF 文件。
de(德文)
es(西班牙文)
fr(法文)
it(義大利文)
sv(瑞典文)
發生此類問題是由於受 Adobe Acrobat Reader 所限。 如需有關此問題的更多資訊,請參閱 Adobe Technote 網站 ( http://www.adobe.com:80/support/techdocs/294de.htm)。
解決方法:請選擇以下其中一種解決方法。
在 Solaris 9 12/02 作業環境和其他基於 UNIX 的系統上,將環境變數 LC_ALL 設定為 C,然後執行 acroread。例如,在 C shell 中,請在終端機視窗中鍵入下列指令。
% env LC_ALL=C acroread |
升級至 Adobe Acrobat Reader 5.0 或更高版本。
如果發生以下情況,某些 Solaris 9 12/02 文件集合可能會被意外地從您的系統中移除。
您在系統上同時安裝了 Solaris 9 12/02 Documentation 1 of 2 CD 與 2 of 2 CD。
然後使用 prodreg 公用程式或 Solaris 9 12/02 Documentation CD 安裝程式移除某些文件套裝軟體。
Solaris 9 12/02 Documentation CD 1 of 2 與 2 of 2 有三個相同的集合。如果您移除的套裝軟體包含 Solaris 9 12/02 Documentation 1 of 2 CD 或 2 of 2 CD 安裝的集合,則套裝軟體會同時從兩個安裝中移除。
下表所示為可能會被意外移除的套裝軟體。
表 2–1 同時包含在兩個 Solaris 9 12/02 Documentation CD 上的 Solaris 9 12/02 文件套裝軟體
HTML 套裝軟體名稱 |
PDF 套裝軟體名稱 |
集合描述 |
---|---|---|
SUNWaadm |
SUNWpaadm |
Solaris 9 系統管理員集合 |
SUNWdev |
SUNWpdev |
Solaris 9 開發人員集合 |
SUNWids |
SUNWpids |
iPlanet Directory Server 5.1 Collection |
解決方法:請選擇以下其中一種解決方法。
如果解除安裝程序意外地移除了這些文件套裝軟體,而您的系統上仍需要這些套裝軟體,可以從 Solaris 9 12/02 Documentation 1 of 2 CD 或 2 of 2 CD 進行重新安裝。
為避免發生此類問題,請使用 pkgrm 公用程式來移除您要從系統上清除的套裝軟體。
如果您嘗試使用 Solaris 9 12/02(x86 平台版)作業環境登入阿拉伯文與希伯來文語言環境,dtlogin 將會當機、重新啟動並顯示登入提示。以下的錯誤訊息會顯示出來。
X 伺服器在顯示 :0... 時無法啟動 |
如果您嘗試在從指令行將語言環境設定為 ar 或 he 後啟動應用程式,該應用程式可能發生故障核心傾印。
解決方法:為避免發生此問題,請套用修補程式 114034-01。此修補程式可在 http://sunsolve.sun.com 上找到。
在 en_US.UTF-8 語言環境中,您無法透過同時按 AltGraph 和 E 鍵來鍵入 Euro 字元。
解決方法:請選擇以下其中一種解決方法。
按下並放開 Compose 鍵,接著再按下並放開 C 鍵,再接著按下並放開 = 鍵 (Compose+C+=)。
如果您的鍵盤沒有包含 Compose 鍵,請在您按下 Shift 和 T 鍵時按下 Control 鍵 (Ctrl-Shift-T)。
在按下 4 鍵時同時按下 Alt 按鍵 (Alt-4)。
若要在阿拉伯語言環境中產生變音符字元,請鍵入阿拉伯文字元,再接著按下 Shift-U。
歐洲語系 UTF-8 語言環境中的排序無法正常執行。
解決方法:在您嘗試於 FIGGS UTF-8 語言環境中進行排序之前,請將 LC_COLLATE 變數設定為 ISO–1 的相等值。
# echo $LC_COLLATE > es_ES.UTF-8 # LC_COLLATE=es_ES.IS08859-1 # export LC_COLLATE |
然後再開始排序。
當您嘗試在 Solaris 9 12/02 作業環境預設瀏覽器中使用 Sun ONE Application Server 管理介面時,會顯示以下錯誤訊息。
不支援的瀏覽器: Netscape 4.78 建議您將瀏覽器升級至 Netscape 4.79 或 Netscape 6.2(或更高版本), 以執行 Sun One Application Server Administrative UI。選擇繼續而不升級 可能導致效能下降或意外動作。 |
解決方法:使用 /usr/dt/bin/netscape6,而非 /usr/dt/bin/netscape。
Netscape NavigatorTM 的某些版本不支援 Sun ONE Application Server 存取控制清單 (ACL) 編輯。如果您嘗試使用 Netscape Navigator 版本 6.x 或 Netscape Navigator 版本 7.x 編輯 ACL 項目,則可能會遇到間歇性問題。
例如:
瀏覽器視窗消失。
啟動時不顯示 ACL 編輯螢幕。
解決方法:請選擇以下其中一種解決方法。
使用支援的 Netscape Navigator 4.79 版或 Microsoft Internet Explorer 6.0 版。
手動編輯 ACL 檔案。如需有關製作 ACL 檔案格式的詳細資訊,請參閱 "Sun ONE Application Server 7, Standard Edition Administrator's Guide"。
如果您使用 Oracle 9.2 用戶端存取 Oracle 9.1 資料庫,當數字欄位跟隨時間標記欄位時可能發生資料毀壞。
在 Oracle 9.1 資料庫上使用 ojdbc14.jar 檔案時會發生此類問題。套用修補程式可能有助於解決執行 Oracle 9.1 資料庫的 Solaris 32 位元機器上發生的此類問題。此 JDBCTM 驅動程式係針對使用 JDKTM 1.4 的 Oracle。
解決方法:從 Oracle 網站取得 Oracle 可能會提供的針對錯誤 2199718 的修補程式,並將其套用直您的伺服器。
系統會針對使用指令行介面建立的永久性管理員工廠資源報告檢視器錯誤。 在 Sun ONE Application Server 管理介面中檢視資源時,會顯示以下錯誤。
ArgChecker 故障: jndiName 驗證失敗: 物件必須非空 |
解決方法:執行以下步驟,以建立新的永久性管理工廠資源。
建立 jdbc 連接儲存區,將資料資源資訊連接到資料庫。
建立 jdbc 資源,使連接儲存區可透過查找 Java Naming and Directory InterfaceTM (J.N.D.I.) 來使用。
使用在步驟 2 中建立的 jdbc 資源建立永久性管理資源。
server.xml 檔案中 iiop 偵聽程式元素的位址屬性之 any 值允許偵聽系統上的所有可用介面。此支援包括 IPv4 介面和 IPv6 介面。但是,Sun ONE Application Server 預設配置中 iiop 偵聽程式元素的位址值為 0.0.0.0。此預設配置不偵聽 IPv6 介面。 此配置僅偵聽系統上的所有 IPv4 介面。
解決方法:請使用 server.xml 檔案中 iiop 偵聽程式元素的位址屬性之 :: 值,以偵聽系統中的所有 IPv4 與 IPv6 介面。
如果在安裝證書並啟用安全性後嘗試重新啟動 Sun ONE Application Server,則重新啟動會失敗。會有一則訊息顯示伺服器無法收到密碼。
未啟用 SSL 時,系統不會快取密碼,這樣會導致重新啟動失敗。restart 指令不支援從未啟用 SSL 的模式轉換到啟用 SSL 的模式。
此問題僅在第一次重新啟動伺服器時發生。後續重新啟動時工作正常。
解決方法:請選擇以下其中一種解決方法。
如果應用程式包含多個 Enterprise JavaBeansTM 元件,則伺服器可能在動態重新載入應用程式時當機。動態重新載入功能用於在開發環境中快速測試應用程式的次要變更。當機是因嘗試使用的檔案描述元多於可用描述元。
解決方法:請執行以下步驟。
以下列格式在 /etc/system 檔案中加入多行,以增加檔案描述元範圍。
set rlim_fd_max=8192
set rlim_fd_cur=2048
可以依據應用程式的大小將這些值設定為更大或更小的值。
重新啟動系統。
如果系統預設編碼不是 UTF-8,則 Application Server 的輸出中的多位元組字元可能顯示不正確。
解決方法:在瀏覽器中開啟 server.log 檔案。
如果透過 Sun ONE 應用程式管理介面安裝外部證書,在您嘗試透過安裝在外部加密模組中的證書啟用 http 偵聽程式的 SSL 時會遇到問題。雖然證書安裝成功,但證書綽號不會顯示在管理介面中。
解決方法:請完成以下步驟。
以管理使用者的身份登入已安裝 Sun ONE Application Server 軟體的系統。
透過使用 asadmin 指令,將 http 偵聽程式連結至安裝在外部加密模組中的證書。如需有關 asadmin 指令的更多資訊,請參閱 asadmin(1AS) 線上援助頁。
# asadmin create-ssl --user admin user--password password --host host name \ --port port --type http-listener --certname nobody@apprealm:Server-Cert \ --instance instance --ssl3enabled=true \ --ssl3tlsciphers +rsa_rc4_128_md5 http-listener-1 |
以上指令建立證書與伺服器實例之間的連結。該指令不會安裝證書,證書是透過管理介面安裝的。
雖然證書與 http 偵聽程式相連結,但 http 偵聽程式會在非 SSL 模式下偵聽。
啟用 http 偵聽程式,以在 SSL 模式下偵聽。請使用以下指令。
# asadmin set --user admin user --password password --host host name \ --port port server1.http-listener.http-listener-1.securityEnabled=true |
以上指令可將伺服器實例偵聽狀態從非 SSL 切換至 SSL。 完成以上步驟之後,證書將顯示在管理介面中。
您現在可以使用管理介面來依需要編輯 http 偵聽程式。
如果在 Solaris 9 12/02 作業環境中執行 Sun ONE Application Server 軟體,並使用 /usr/appserver/bin 中的 flexanlg 指令,則會顯示開啟失敗錯誤。
ld.so.1: /usr/appserver/bin/flexanlg: 嚴重錯誤: libplc4.so:開啟失敗: 沒有該檔案或目錄 中止 |
解決方法:完成以下步驟。
將以下項目加入 LD_LIBRARY_PATH 檔案。
/usr/lib/mps
執行 flexanlg 指令。
% /usr/appserver/bin/flexanlg
如果未在網路中使用 IPv6,您不會遇到此問題。
依預設,Sun ONE Application Server 7 實例與 Admin Server 實例使用 IPv4。可以使用 Sun ONE Application Server 的所有作業環境均支援 IPv4。在支援 IPv6 的平台上,需要變更 Sun ONE Application Server 配置以保持一致。
如果要變更這些配置,您必須絕對確定可以支援 IPv6。如果將 IPv6 相關配置套用到僅支援 IPv4 的系統,則 Application Server 實例可能無法啟動。
解決方法:請執行以下配置變更:
啟動 Admin Server。
透過在瀏覽器中連接到 Admin Server HTTP 主機或連接埠來啟動管理主控台。
選取伺服器實例以配置 IPv6,例如 server1。
在樹檢視中展開 HTTP 偵聽程式節點。
選取 HTTP 偵聽程式以配置 IPv6,例如 http-listener1。
在「一般」區段中,將「IP 位址」欄位值變更為 ANY 。
在「進階」區段中,將「家族」欄位值變更為 INET6。
將「家族」欄位設定為 INET6 並不會停用 IPv4 功能,除非為 IP 位址選取 IPv6 位址。選取 ANY 作為 IP 位址可以符合任何 IPv4 或 IPv6 位址。
按一下「儲存」。
從左窗格中選取伺服器實例。
按一下「套用變更」。
按一下「停止」。
按一下「啟動」。
伺服器會重新啟動並應用您所作的變更。
如果使用者在略微變更應用程式並進行重新封裝後嘗試多次部署範例,螢幕將顯示以下錯誤訊息。
已經部署 |
此問題會影響大多數範例,因為這些範例會使用包含部署目標的 Ant 公用程式以及 common.xml 檔案。因此,此組合使用會將應用程式部署與資源註冊混合在一起。
解決方法:請選擇以下其中一種解決方法。
對於使用 Ant 公用程式 build.xml 檔案(包含 common.xml 檔案)的大多數範例應用程式,請鍵入以下指令。
% asant deploy_common |
對於所有其他範例應用程式,請鍵入以下指令。
% asant undeploy % asant deploy |
區域交易管理員不支援限定逾時的交易。 如果您在交易服務元素中將以秒為單位的逾時屬性設定為大於零的值,則所有區域交易將被作為全域交易來處理。逾時值為零表示如果交易管理員未聽到參與資料來源的回應,將會一直等待。
如果資料來源驅動程式不支援全域交易,則區域交易可能會失敗。
解決方法:將以秒為單位的逾時值重設為預設值 0。
若要在容器管理持久性 (CMP) bean 中運用 Oracle JDBC 最佳化,必須在 server.xml 檔案的 classpath-suffix 屬性中指定 classes12.zip。請勿將 classes12.zip 檔案放置在 instance/lib/ 目錄(協力廠商程式庫的預設目錄)中。
解決方法:將 classes12.zip 檔案加入 server.xml 檔案的 classpath-suffix 屬性中。
如果 Admin Server 的所有者為超級使用者,而伺服器實例的所有者不是超級使用者,則在動態重新載入和呼叫應用程式時,可能發生許可權問題。
解決方法:在部署和重新部署模組或應用程式(使用或不使用預編譯選項)後,請將以下目錄的所有者從超級使用者變更為非超級使用者,即實例所有者。
此目錄所有權變更應以遞迴方式套用於下列清單中的每個目錄(基於應用程式類型):
domain-root/server-instance /applications/j2ee-apps/application-name
domain-root/server-instance /applications/j2ee-modules/module-name
domain-root/server-instance /generated/ejb/j2ee-apps/application-name
domain-root/server-instance /generated/jsp/j2ee-apps/application-name
domain-root/server-instance /generated/jsp/j2ee-modules/module-name
成為超級使用者。
針對每個適用於您所在環境的目錄鍵入以下指令。
# chown -R non-root-instance-owner directory-name |
如果 DNS 查找 IPv6 位址失敗,則遠端方法調用網際網路 ORB 間協定 (RMI-IIOP) 的用戶端無法使用 IPv6 位址。
解決方法:應該在部署網站設定網域名稱服務 (DNS),以便查找 IPv6 位址。
如果使用者在「僅顯示項目」欄位中鍵入多位元組字元,並搜尋事件日誌,則「僅顯示項目」欄位中的值將在顯示搜尋結果時毀壞。問題是由訊息格式從 UTF-16 到 UTF-8 的轉換所導致的。
解決方法:無。
將 Sun ONE Application Server 作為 Solaris 安裝的一部份來進行安裝時,會有數個問題與 Application Server 啟動相關聯:
在 Solaris 系統啟動時,所有應用程式伺服器實例與管理伺服器實例都會自動啟動。在許多環境中,並非所有實例均應在 Solaris 系統啟動時自動啟動。啟動所有定義的實例會影響系統中可用的記憶體。
在應用程式伺服器實例與管理伺服器實例自動啟動時,會以超級使用者的身份執行每個實例的啟動程序檔。執行非超級使用者所有的實例啟動程序檔會使非超級使用者可以透過修改實例層啟動程序檔以超級使用者的身份進行存取。
在安裝 Sun ONE Application Server 時,已安裝 /etc/init.d/appserv 程序檔以及至 /etc/rc*.d/ 目錄中的 S84appserv 程序檔與 K05appserv 程序檔的符號連結。這些程序檔會導致所有應用程序伺服器實例與管理伺服器實例(作為應用程式伺服器安裝的一部份定義)在 Solaris 系統啟動和關閉時自動啟動與停止。
/etc/init.d/appserv 程序檔包含以下程式碼部份。
case "$1" in 'start') /usr/sbin/asadmin start-appserv ;; 'stop') /usr/sbin/asadmin stop-appserv ;;
執行 asadmin start-appserv 指令會導致管理伺服器實例與所用應用程式伺服器實例(在所有管理網域中定義的)在 Solaris 系統啟動時啟動。由於系統啟動與關閉程序檔是以超級使用者的身份來執行的,因此每個應用程式伺服器與管理伺服器實例的啟動程序檔也會以超級使用者的身份來執行。實例層啟動程序檔名為 startserv,位於 instance-dir/bin/startserv。由於實例可以由超級使用者所有,因此非超級使用者可以修改 startserv 程序檔而以超級使用者的身份執行指令。
如果實例有使用特權網路連接埠,則實例的 startserv 程序檔必須以超級使用者的身份來執行。但是,通常會在實例配置中設定以使用者身份執行,以迫使實例在由超級使用者進行初始啟動後以特定使用者的身份來執行。
解決方法:依據您的環境,執行以下其中一種解決方法。
如果環境不要求所有應用程式伺服器與管理伺服器實例以超級使用者的身份來啟動,則可在 /etc/init.d/appserv 程序檔中將 asadmin start-appserv 與 asadmin stop-appserv 指令變更為註釋。
如果環境要求在一個或多個管理網域中啟動特定管理網域或特定實例,您可以修改或建立程序檔以自動執行該程序。請注意,「特定管理網域」包含每個網域的管理伺服器實例與所有應用程式伺服器實例。
修改 /etc/init.d/appserv 程序檔以啟動您感興趣的網域或實例。
定義符合環境需要的新 /etc/rc*.d/ 程序檔。
啟動考量內容:當修改 Solaris 作業環境啟動程序檔以自動啟動特定應用程式伺服器管理網域或特定應用程式伺服器實例時,請考量以下內容。
啟動特定網域 – 如果您要以超級使用者的身份啟動特定管理網域的管理伺服器實例與所有應用程式伺服器實例, 請如下所示修改 /etc/rc*.d/ 程序檔。
case "$1" in 'start') /usr/sbin/asadmin start-domain --domain production-domain ;; 'stop') /usr/sbin/asadmin stop-domain --domain production-domain ;;
以非超級使用者身份啟動特定應用程式伺服器實例 – 修改 /etc/rc*.d/ 程序檔以使用帶有 -c 選項的 su 指令。
case "$1" in 'start') su - usera -c "/usr/sbin/asadmin start-instance --domain test-domain instance-a" su - userb -c "/usr/sbin/asadmin start-instance --domain test-domain instance-b" ;; 'stop') su - usera -c "/usr/sbin/asadmin stop-instance --domain test-domain instance-a" su - userb -c "/usr/sbin/asadmin stop-instance --domain test-domain instance-b" ;;
請參閱 "Sun ONE Application Server 7 Administrator's Guide" 以取得有關可透過 asadmin 指令行介面使用的 startup 和 shutdown 指令的更多資訊。
在安裝期間輸入識別的名稱時,請使用 UTF-8 字元集編碼。系統不支援其他的編碼。 安裝作業不會將資料從本機字元集編碼轉換至 UTF-8 字元集編碼。用來匯入資料的 LDIF 檔案也必須使用 UTF-8 字元集編碼。匯入作業不會將資料從本機字元集轉換至 UTF-8 字元集編碼。
對於 groupOfNames 和 groupOfUniquenames 物件類別而言,Sun Open Net Environment (Sun ONE) Directory Server(原為 iPlanet Directory Server)5.1 所提供的機制與在 RFC 2256 中指定的機制不同。在提供的機制中, member 和 uniquemember 屬性類型是可選的。RFC 2256 則指定在各個物件類別中這些屬性類型必須存在至少一個值。
aci 屬性是可作業屬性,在搜尋過程中不會傳回,除非您明確要求該屬性。
目前不支援 WAN 上的多重主系統複製。
Sun ONE Directory Server 5.1 提供 UID 唯一性外掛程式。依預設,外掛程式不會啟動。如果要確定特定屬性的屬性唯一性,請為每個屬性建立一個屬性唯一性外掛程式的新實例。 如需有關屬性唯一性外掛程式的更多資訊,請參閱「 iPlanet Directory Server 5.1 管理員指南」(http://docs.sun.com)。
依預設,參考整合性外掛程式現在為關閉狀態。為避免發生解析度迴圈衝突,在多重主系統複製環境中,僅可在一個主系統複製上啟用參考整合性外掛程式。在發布鍊結需求的伺服器上啟用參考整合性外掛程式之前,請分析您的效能資源、時間和整合需求。 整合性檢查會佔用大量記憶體和 CPU 資源。
nsRoleDN 屬性用於定義角色。該屬性不應用於估算使用者項目中的角色關係。估算角色關係時,請參照 nsrole 屬性。
如果 VLV 索引涵蓋不止一個資料庫,則 VLV 索引無法正常工作。
如果您啟動 Sun ONE Directory Server 5.1 主控台,並建立處於非作用中的新使用者或新角色,則不能停用新建立的使用者或角色。無法藉由主控台建立非作用中的使用者和角色。
解決方法:如果要建立非作用中的使用者或角色,請執行以下步驟:
建立新的使用者或角色。
連按兩下新建立的使用者或角色,或者選取新建立的使用者或角色。 按一下「物件」功能表上的「屬性」項目。
按一下「帳戶」標籤。
按一下「停用」按鈕。
按一下「確定」。
新建立的使用者或角色即停用。
如果您指定的基本 DN 包含空格,例如,如果在配置 Sun ONE Directory Server 5.1 時指定 o=U.S. Government,C=US,則產生的 DN 會被截為 Government,C=US。 在配置時,DN 應輸入為 o=U.S.%20Government,C=US 。
解決方法:如果要更正基本 DN 項目,請遵照以下步驟執行。
在「主控台」的「伺服器和應用程式」標籤上,選取導航窗格左側的頂層目錄項目。
在「使用者」目錄子樹欄位中編輯字尾。
按一下「確定」。
如果您使用密碼策略資訊更新非主目錄伺服器,此資訊不會複製到其他所有的伺服器上。 此資訊包括帳戶鎖定。
解決方法:在每個伺服器上手動管理密碼策略資訊。
如果帳戶鎖定有效而使用者密碼已變更,則帳戶鎖定仍會保持有效。
解決方法:重設 accountUnlockTime、 passwordRetryCount 與 retryCountResetTime 鎖定屬性以解除帳戶鎖定。
如果您安裝 Sun ONE Directory Server 5.1,啟動主控台,初始化包含 LDIF 檔案的目錄,然後備份伺服器,則主控台會報告備份成功。但是,事實上備份已失敗。
解決方法:初始化資料庫之後,請從「主控台」執行下列工作:
停止伺服器。
重新啟動伺服器。
執行備份。
除唯一路徑名稱中的大小寫情況外,您不能使用 LDAP 命名服務來建立完全相同的自動裝載路徑名稱。如果命名屬性使用大小寫相符的語法定義,且具有相同名稱但大小寫不同的項目已經存在,則目錄伺服器不允許建立該項目。
/home/foo 和 /home/Foo 路徑不能同時存在。
例如,如果項目 attr=foo,dc=mycompany,dc=com 已經存在,則伺服器不允許建立 attr=Foo,dc=mycompany,dc=com。此問題會產生負面影響,即當使用 LDAP 命名服務時,自動裝載路徑名稱必須是唯一的,且不管大小寫。
解決方法:無。
如果在匯出、備份、回復或建立索引時停止伺服器,則伺服器會當機。
解決方法:請勿在執行此類作業時停止伺服器。
如果您嘗試使用基於證書的授權在安全封包層 (SSL) 上配置複製,則無論存在以下何種情況,複製都將無法進行。
供應商的證書是自我簽名的。
供應商的證書僅可以用作 SSL 伺服器證書,不能在 SSL 交握期間「擔當」用戶端的角色。
解決方法:無。