如需有關從 Solaris 10 10/08 發行版本開始之升級支援的最新資訊,請參閱Solaris 發行版本升級支援的變更。
本節旨在說明升級時所遇到的錯誤。有些錯誤會在您升級至 Solaris 10 作業系統時出現。其他則可能在您完成升級之後出現。
在系統升級至 Solaris 10 10/08 作業系統期間,安裝 SUNWsmbar 時會移除 /etc/services 和 /etc/inet/services 檔案。重新啟動時,系統主控台會顯示以下錯誤訊息:
line1-v215 console login: Oct 6 15:40:57 inetd[457]: Property 'name' of instance svc:/network/stdiscover:default is missing, inconsistent or invalid Oct 6 15:40:57 inetd[457]: Property 'proto' of instance svc:/network/stdiscover:default is missing, inconsistent or invalid Oct 6 15:40:57 inetd[457]: Invalid configuration for instance svc:/network/stdiscover:default, placing in maintenance Oct 6 15:40:57 inetd[457]: Property 'name' of instance svc:/network/stlisten:default is missing, inconsistent or invalid Oct 6 15:40:57 inetd[457]: Property 'proto' of instance svc:/network/stlisten:default is missing, inconsistent or invalid Oct 6 15:40:57 inetd[457]: Invalid configuration for instance svc:/network/stlisten:default, placing in maintenance |
解決方法: 為避免在作業系統升級期間移除 /etc/services 和 /etc/inet/services,請執行以下步驟:
停止所有執行中的 Samba 服務:
#svcadm disable samba:default swat:default wins:default winbind:default |
先解除安裝 SUNWsmbar 套裝軟體,再升級作業系統:
#pkgrm SUNWsmbar |
將作業系統升級至 Solaris 10 10/08 發行版本。
重新安裝 SUNWsmbar 套裝軟體:
#pkgadd SUNWsmbar |
在非執行中狀態的非全域區域中使用 lucreate 和 lumake 指令時,可能無法順利執行這些指令。原始非全域區域的內容與副本可能有所不同。使用者使用 zlogin 指令可能無法登入到區域的主控台。使用 zlogin 指令時會顯示下列錯誤訊息:
zlogin: makeutx failed |
lucreate 和 lumake 指令的診斷輸出未顯示任何錯誤。
解決方法: 在使用 lucreate 和 lumake 指令之前,請確保所有非全域區域均處於執行中狀態。
使用 Solaris Live Upgrade 從先前的 Solaris 8 和 Solaris 9 發行版本升級至 Solaris 10 10/08 發行版本時會失敗。現在使用 7za 公用程式解壓縮安裝影像壓縮檔。SUNWp7zip 套裝軟體並未納入 Solaris 8 和 9 發行版本中。因此,Solaris Live Upgrade 失敗。
解決方法: 請選取以下解決方法之一:
解決方法 1:若要使用 Solaris Live Upgrade 將目前的 Solaris 8 作業系統升級至 Solaris 10 10/08 發行版本,請執行下列步驟:
對於 SPARC 系統 – 支援使用 Solaris Live Upgrade 從 Solaris 8 發行版本升級至 Solaris 10 10/08 發行版本。如需如何使用 Solaris Live Upgrade 的逐步程序,請參閱 http://www.sun.com/bigadmin/features/articles/live_upgrade_patch.jsp。
對於 x86 系統 – 不支援使用 Solaris Live Upgrade 從 Solaris 8 發行版本升級至 Solaris 10 10/08 發行版本。請改為使用標準升級程序,或從 Solaris 8 作業系統執行 Solaris Live Upgrade 以升級至 Solaris 9 作業系統或 Solaris 10 作業系統。接著,您可以從 Solaris 9 發行版本或 Solaris 10 發行版本執行 Solaris Live Upgrade 以升級至 Solaris 10 10/08。
解決方法 2:若要使用 Solaris Live Upgrade 將目前的 Solaris 9 作業系統升級至 Solaris 10 10/08 發行版本,請套用下列修補程式:
對於 SPARC 系統 – 137477-01 或更新版本
對於 x86 系統 – 137478-01 或更新版本
解決方法 3:若要使用 Solaris Live Upgrade 將目前的 Solaris 10 作業系統升級至 Solaris 10 10/08 發行版本,請套用下列修補程式:
對於 SPARC 系統 – 137321-01 或更新版本
對於 x86 系統 – 137322-01 或更新版本
在使用 Solaris Live Upgrade 對使用 /tmp 的非全域區域執行升級之後,在該區域中執行的各種程序可能會當機。升級程序會變更 /tmp 目錄的權限,這會導致應用程式失敗。使用者將會看到 drwxr-xr-x 權限,而不是正確的 drwxrwxrwx 權限。
解決方法: 請選取以下解決方法之一:
解決方法 1:在啟動新的啟動環境之前,請執行下列步驟:
掛載磁碟:
# mount /dev/dsk/c1t1d0s6 /mnt |
修正權限;
# chmod 1777 /mnt/zone/*/root/tmp |
卸載磁碟:
# umount /mnt |
此解決方法可一次修正所有區域。
解決方法 2: 如果您已經啟動新的啟動環境,請以超級使用者身份登入到系統。停止區域,手動設定正確的 /tmp 目錄權限。鍵入以下指令:
# chmod 1777 /path/root/tmp |
其中, path 為區域的區域路徑。
如果區域安裝在 /opt 目錄中,則區域的磁碟空間重新分配 (DSR) 升級會失敗。復原 DSR 歸檔期間升級可能失敗。在一些情況下,升級可能會成功,但系統無法重新啟動。
解決方法: 確保升級之前根檔案系統的可用空間沒有 100% 佔用。升級之前移除一些檔案,以便根磁碟片的佔用空間不會超過 90%。
當您將 Solaris Trusted Extensions 從 Solaris 10 11/06 或 Solaris 10 8/07 發行版本升級至目前的 Solaris 10 10/08 發行版本時,不需要的本土化 Solaris Trusted Extensions 套裝軟體會安裝在系統中。因為 Solaris 10 11/06 或 Solaris 10 8/07 發行版本中的 Solaris Trusted Extensions 安裝程式預設會安裝已本土化的套裝軟體,因此會發生此錯誤。不會顯示錯誤訊息。
解決方法: 在將 Solaris Trusted Extensions 升級至目前的發行版本之前,請移除下列本土化的 Solaris Trusted Extensions 套裝軟體:
SUNWjdtts |
SUNWkdtts |
SUNWjmgts |
SUNWkmgts |
SUNWjtsman |
SUNWktsu |
SUNWjtsu |
SUNWodtts |
SUNWtgnome-l10n-doc-ja |
SUNWtgnome-l10n-ui-ko |
SUNWtgnome-l10n-ui-it |
SUNWtgnome-l10n-ui-zhHK |
SUNWtgnome-l10n-ui-sv |
SUNWtgnome-l10n-ui-es |
SUNWtgnome-l10n-doc-ko |
SUNWtgnome-l10n-ui-ptBR |
SUNWtgnome-l10n-ui-ja |
SUNWtgnome-l10n-ui-zhTW |
SUNWtgnome-l10n-ui-zhCN |
SUNWtgnome-l10n-ui-fr |
SUNWtgnome-l10n-ui-de |
SUNWtgnome-l10n-ui-ru |
從 Solaris 10 Hardware 2 發行版本升級至目前的 Solaris 10 10/08 發行版本期間會發生此錯誤。
在 Solaris 10 Hardware 2 發行版本中,適用於任何名稱服務 (例如 NIS、NIS+、FILES 或 LDAP) 的 name_service.xml 檔案如下所示:
# ls -l name_service.xml lrwxrwxrwx 1 root root 10 Apr 10 16:26 name_service.xml -> ns_files.xml |
如果名稱服務是 NIS,則 name_service.xml 檔案會連結至 ns_files.xml。但是,ns_files.xml 的內容與 ns_nis.xml 相同。
# cat /etc/release Solaris 10 3/05 HW2 s10s_hw2wos_05 SPARC Copyright 2005 Sun Microsystems, Inc. All Rights Reserved. Use is subject to license terms. Assembled 26 September 2005 # cd /var/svc/profile # ls -l name_service.xml ns_files.xml ns_nis.xml lrwxrwxrwx 1 root other 12 May 21 04:06 name_service.xml -> ns_files.xml -r--r--r-- 1 root sys 779 May 21 04:25 ns_files.xml -r--r--r-- 1 root sys 779 Jan 21 2005 ns_nis.xml # # diff ns_files.xml ns_nis.xml # diff name_service.xml ns_nis.xml |
在上面的輸出中,ns_nis.xml 和 ns_files.xml 檔案的輸出內容相同。這意味著 name_service.xml 檔案會以符號方式連結至錯誤的名稱服務檔案。name_service.xml 檔案會連結至 ns_files.xml。但是 name_service.xml 檔案應連結至 ns_nis.xml。
只有在 name_service.xml 不是連結檔案的情況下,對 CR 6411084、SUNWcsr 安裝或安裝後程序檔的修正才會建立正確的連結。如果 name_service.xml 已經是符號連結檔案,則在 Solaris 10 Hardware 2 發行版本中,對 CR 6411084 的修正將無法發揮效用。
從 Solaris 10 Hardware 2 升級至目前的 Solaris 10 10/08 發行版本後,主控台上會顯示或訊息檔案中會記錄下列訊息:
Oct 23 12:18:45 vt2000a automount[301]: [ID 366266 daemon.error] can't read nis map auto_master: can't communicate with ypbind - retrying |
此外,/network/nis/client:default 服務也會處於離線狀態。
解決方法: 請選取以下解決方法之一:
解決方法 1:在升級之前,請移除 /var/svc/profile/name_service.xml 檔案。
解決方法 2:升級之後,請根據名稱服務,將 /var/svc/profile/name_service.xml 連結變更為正確的 ns_<xxx>.xml 檔案。
已安裝卻從未啟動或未準備就緒的非全域區域,會造成系統無法正確升級。不會顯示錯誤訊息。
解決方法:
如果發現有這樣的區域,應將此種區域先準備就緒,然後在開始升級前停用。例如:
global# zoneadm -z myzone ready ; zoneadm -z myzone halt |
將 Solaris 10 3/05 系統或 Solaris 10 1/06 系統升級至具有非全域區域的 Solaris 10 10/08 發行版本可能導致掛載本機檔案系統的 SMF 服務在非全域區域中無法運作。結果,非全域區域中的其他服務可能無法啟動。
將具有非全域區域的 Solaris 10 系統升級至 Solaris 10 10/08 發行版本時,服務可能處於維護狀態。例如:
# zlogin myzone svcs -x svc:/system/filesystem/local:default (local file system mounts) State: maintenance since Wed May 24 13:18:06 2006 Reason: Start method exited with $SMF_EXIT_ERR_FATAL. See: http://sun.com/msg/SMF-8000-KS See: /var/svc/log/system-filesystem-local:default.log Impact: 18 dependent services are not running. (Use -v for list.) |
解決方法:
從全域區域重新啟動非全域區域。例如:
global# zoneadm -z myzone reboot |
在此 Solaris 10 發行版本中,Solaris Volume Manager 會以新格式顯示裝置 ID 輸出。將裝置 ID 支援引入磁碟集中的 Solaris 9 9/04 作業系統無法辨識新格式。在您從 Solaris 9 9/04 發行版本升級至 Solaris 10 作業系統時,和現有的磁碟集相關聯的裝置 ID 在 Solaris Volume Manager 配置中並未更新。如果您需要復原至 Solaris 9 9/04 作業系統,磁碟集在升級後變更的配置對 Solaris 9 9/04 作業系統來說可能是無效的。如需更多資訊,請參閱「Solaris Volume Manager Administration Guide」中的第 25 章「Troubleshooting Solaris Volume Manager (Tasks)」。
以下列方式使用 Solaris Live Upgrade 軟體時,升級的進度列不會出現:
使用 Solaris 10 10/08 CD 媒體升級作業系統。
使用 luupgrade 指令和下列選項升級啟動環境:
-i 可使用 CD 媒體執行安裝
-O「-nodisplay -noconsole」在文字模式下執行第二片 CD 的安裝程式,而且不需要與使用者互動
從下列發行版本升級至 Solaris 10 10/08 軟體:
Solaris 9 發行版本
Solaris 10 發行版本
例如,如果您執行下列指令,則在看到以下輸出之後應會顯示進度列:
Running installer on BE s10u1. |
可是,進度列還是沒有出現。
# luupgrade -i -n s10u1 -s /net/installsrv/export/s10u1 -O "-nodisplay -noconsole" Validating the contents of the media /net/installsvr/export/s10u1. The media is a standard Solaris media. The media contains a standard Solaris installer. The media contains Solaris 3 version 10. Mounting BE s10u1. Running installer on BE s10u1. |
不會顯示錯誤訊息。
解決方法: 請使用 prstat 指令。在安裝過程中增加套裝軟體時,此指令可讓您監視進度。
使用 Solaris Live Upgrade 從 Solaris 8 或 Solaris 9 發行版本升級至 Solaris 10 作業系統時,無法移除過時的解除安裝程式。這些先前版本作業系統的解除安裝程式留存在系統的 /var/sadm/prod 目錄中。
下列過時的解除安裝程式無法移除。
uninstall_Alternate_Pathing_2_3_1.class uninstall_CDRW_1_1.class o uninstall_CDRW_1_0.class uninstall_Bonus_Localization_-_Catalan_CDE_Desktop.class uninstall_Bonus_Localization_-_Polish_CDE_Desktop.class uninstall_Bonus_Localizations_-_Russian_CDE_Desktop.class uninstall_Capacity_on_Demand_1_0.class uninstall_Java3D_1_3_1.class uninstall_Java3D_1_3.class uninstall_Java3D_1_2_1_04.class uninstall_Java3D_1_2_1_03.class uninstall_Lights_Out_Management_2_0.class uninstall_Man_Page_Supplement.class uninstall_OpenGL_1_3.class uninstall_OpenGL_1_2_3.class uninstall_Netra_ct_Platform_1_0.class uninstall_Netra_t11xx_Alarms_2_0.class uninstall_Netscape_6_2_3.class uninstall_Netscape_6_2_1_Beta.class uninstall_PC_launcher_1_0_2.class uninstall_PC_launcher_1_0_1_PCfileviewer_1_0_1.class uninstall_RSC_2_2_2.class uninstall_RSC_2_2_1.class uninstall_RSC_2_2.class uninstall_ShowMeTV_1_3.class uninstall_Solaris_9_French_Localization.class uninstall_Solaris_9_German_Localization.class uninstall_Solaris_9_Hong_Kong_Traditional_Chinese_Localization.class uninstall_Solaris_9_Italian_Localization.class uninstall_Solaris_9_Japanese_Localization.class uninstall_Solaris_9_Korean_Localization.class uninstall_Solaris_9_Simplified_Chinese_Localization.class uninstall_Solaris_9_Spanish_Localization.class uninstall_Solaris_9_Swedish_Localization.class uninstall_Solaris_9_Traditional_Chinese_Localization.class uninstall_Solaris_On_Sun_Hardware_Documentation.class uninstall_Sun_Hardware_AnswerBook.class uninstall_SunATM_5_0.class uninstall_SunATM_5_1.class uninstall_SunFDDI_PCI_3_0.class uninstall_SunFDDI_SBus_7_0.class uninstall_Sun_Fire_880_FC-AL_Backplane_Firmware_1_0.class uninstall_Sun_Fire_B10n_Load_Balancing_Blade_1_1.class uninstall_SunForum_3_1.class uninstall_SunForum_3_2.class uninstall_SunHSI_PCI_3_0.class uninstall_SunHSI_SBus_3_0.class uninstall_SunScreen_3_2.class uninstall_SunVTS_5_1_PS6.class uninstall_SunVTS_5_1_PS5.class uninstall_SunVTS_5_1_PS4.class uninstall_SunVTS_5_1_PS3.class uninstall_SunVTS_5_1_PS2.class uninstall_SunVTS_5_1_PS1.class uninstall_SunVTS_5_0.class uninstall_System_Management_Services_1_4.class uninstall_System_Management_Services_1_3.class uninstall_System_Management_Services_1_2.class uninstall_System_Service_Processor_3_5.class uninstall_WBEM_DR_1_0.class uninstall_Web_Start_Wizards_SDK_3_0_2.class uninstall_Web_Start_Wizards_SDK_3_0_1.class uninstall_Web_Start_Wizards_SDK.class uninstall_XML_Libraries_2_4_12.class |
解決方法: 完成系統升級後,請手動移除 /var/sadm/prod 目錄中過時的解除安裝程式。
此 Solaris 10 發行版本引入 pam_ldap 功能中的變更。升級至現有發行版本時,現有 pam.conf 配置檔案中的 pam_ldap 配置未升級來反映這些變化。偵測到 pam_ldap 配置時,升級結束時所產生的 CLEANUP 檔案會包含以下通知:
/etc/pam.conf please examine/update the pam_ldap configuration because its functionality has changed, refer to pam_ldap(5) documentation for more information |
解決方法: 升級後,請檢查 /etc/pam.conf。必要時,請手動修改這些檔案以相容於新的 pam_ldap 功能。此修改含密碼提示,像是 use_first_pass 及 try_first_pass 選項,以及密碼更新。如需有關升級 pam.conf 的更多資訊,請參閱「pam_ldap(5) 線上手冊」及文件。
當使用帶 -i 選項的 Solaris Live Upgrade luupgrade(1M) 指令來完成非使用中的啟動環境升級時,安裝程式顯示的文字在某些語言中可能不可讀。當安裝程式所要求的字型在目前啟動環境中的舊發行版本中不存在時,文字就會毀壞。
解決方法: 請選取以下解決方法之一:
如果您從 Solaris 8 軟體升級至 Solaris 10 發行版本,移除 SUNWjxcft 套裝軟體後,將遇到一個問題。在 upgrade_log 檔案中會記錄以下錯誤訊息:
Removing package SUNWjxcft: Can't open /a/usr/openwin/lib/locale/ja/X11/fonts/TTbitmaps/fonts.upr Can't open /a/usr/openwin/lib/locale/ja/X11/fonts/TTbitmaps/fonts.scale Can't open /a/usr/openwin/lib/locale/ja/X11/fonts/TTbitmaps/fonts.alias Can't open /a/usr/openwin/lib/locale/ja/X11/fonts/TT/fonts.upr Can't open /a/usr/openwin/lib/locale/ja/X11/fonts/TT/fonts.scale Can't open /a/usr/openwin/lib/locale/ja/X11/fonts/TT/fonts.alias Removal of <SUNWjxcft> was successful |
解決方法: 忽略此錯誤訊息。
如果在執行協力廠商 Secure Shell (例如 /etc/init.d/sshd 常駐程式的 OpenSSH) 的系統上升級至 Solaris 10 發行版本,則升級會停用現有的 Secure Shell 常駐程式。Solaris 10 軟體將會在升級期間覆寫 /etc/init.d/sshd 的內容。
解決方法: 請選取以下解決方法之一:
如果您不希望系統上具有 Secure Shell 協定伺服器程式,請勿在升級時安裝 SUNWsshdr 和 SUNWsshdu 套裝軟體。
如果您不希望系統上具有 Secure Shell 協定伺服器程式或用戶端程式,請勿在升級時安裝 Secure Shell Cluster (SUNWCssh)。
升級至 Solaris 10 發行版本時,如果 /export 目錄接近滿容量,則 /export 的空間需求計算會出錯。升級會失敗。如果已安裝無本地磁碟的用戶端,通常會發生此問題。在 /export 目錄中安裝協力廠商軟體時,也會發生此問題。螢幕上將會顯示以下訊息:
WARNING: Insufficient space for the upgrade. |
解決方法: 升級之前,請選取以下解決方法之一:
暫時重新命名 /export 目錄,直至升級完成。
暫時將 /etc/vfstab 檔案中的 /export 行變更為註釋,直到升級完成為止。
如果 /export 是個獨立的檔案系統,則請在執行升級之前先卸載 /export。
如果您的系統目前支援使用 Solstice AdminSuiteTM 2.3 Diskless Client 工具安裝的無本地磁碟的用戶端,則必須執行以下兩個步驟︰
刪除與伺服器屬於同一 Solaris 版本和架構的所有現有無本地磁碟的用戶端。
安裝或升級至 Solaris 10 發行版本。
如需詳細說明,請參閱「System Administration Guide: Basic Administration」。
如果您嘗試在現有的無本地磁碟的用戶端上安裝 Solaris 10 軟體,可能會顯示以下錯誤訊息︰
The Solaris Version (Solaris version-number) on slice <xxxxxxxx> cannot be upgraded. There is an unknown problem with the software configuration installed on this disk. |
在此錯誤訊息中,version-number 是指目前系統上執行的 Solaris 版本。<xxxxxxxx> 表示執行此 Solaris 軟體版本的磁碟片段。