Solaris 9 安裝指南

附錄 C 附加的 SVR4 封裝需求(參考)

這份附錄是為需要使用自訂 JumpStart 程式或 Solaris Live Upgrade 來安裝或移除套裝軟體(特別是協力廠商的套裝軟體)的系統管理員而撰寫的。遵循這些封裝需求將使自訂的 JumpStart 安裝維持非互動式,並避免修改目前執行中的系統,以便您能夠使用 Solaris Live Upgrade 來進行升級。

封裝需求概述

以下文件提供的是關於封裝需求的基本背景資訊。

表 C–1 列有此文件中適用於 Solaris Live Upgrade 或自訂 JumpStart 程式之資訊。

表 C–1 需求資訊

安裝方法 

記錄成文之需求 

Solaris Live Upgrade 

自訂 JumpStart 程式 

自訂 JumpStart 程式以及 Solaris Live Upgrade 互動式開機環境需求

一個互動式開機環境指的就是目前作業環境的複製,並不是目前正執行中的系統。Live Upgrade 或自訂 JumpStart 程式所使用的套裝軟體必須遵循這些需求:

以下清單用來解釋互動式開機環境需求的相容性。

$PKG_INSTALL_ROOT$BASEDIR 之間的差異概述

$PKG_INSTALL_ROOT 為 root ( /) 檔案系統在增加套裝軟體的機器上的位置。該位置設定為 pkgadd 指令的 -R 引數。例如,如果啟動下列指令,則在安裝套裝軟體期間,系統會將 $PKG_INSTALL_ROOT 前置於 /a


# pkgadd -R /a SUNWvxvm

$BASEDIR 指向安裝可重定位套裝軟體物件的 relocatable 基本目錄。僅可重定位物件安裝於此。不可重定位的物件(那些在 pkgmap 檔案中擁有絕對路徑的物件)的安裝位置總是相對於互動式開機環境 (/),而不是相對於實際生效的 $BASEDIR。如果套裝軟體沒有可重定位物件,則該套裝軟體稱為絕對套裝軟體(或不可重定位的),並且 $BASEDIR 不做定義,也無法在套裝軟體程序檔中使用。

例如,假設套裝軟體的 pkgmap 檔案含有兩個登錄:


1 f none sbin/ls 0555 root sys 3541 12322 1002918510
1 f none /sbin/ls2 0555 root sys 3541 12322 2342423332

並且 pkginfo 檔案有 $BASEDIR 的規格:


BASEDIR=/opt

如果使用下列指令安裝此套裝軟體,則 ls 安裝在 /a/opt/sbin/ls 中,但 ls2 安裝為 /a/sbin/ls2


# pkgadd -R /a SUNWtest

Solaris Live Upgrade 互動式開機環境相容性

當使用 Solaris Live Upgrade 並建立新的開機環境時,請遵循這些準則以避免問題。

可以使用多條指令來檢驗這些建立、修改及刪除檔案的需求。例如,dircmp 或是 fssnap 指令可以用來檢驗該套裝軟體是否作業正確。同時,ps 指令可以用來測試常駐程式相容性,以確定套裝軟體不會停止或啟動常駐程式。trusspkgadd -v 以及 pkgrm 指令可以測試執行期間套裝軟體安裝相容性,但是不一定能夠在所有狀況中生效。在下列範例中,truss 指令刪除所有唯讀的、非 $BASEDIR 的存取,並只顯示不存在於指定的互動式開機環境之中的非唯讀的路徑存取。


# TEMPDIR=/a; export TEMPDIR# truss -t open /usr/sbin/pkgadd -R ${TEMPDIR} SUNWvxvm \

2>&1> /dev/null | grep -v O_RDONLY | grep -v \'open("'${TEMPDIR}

有關本節中參考的指令之詳細資訊,請參閱以下線上援助頁 dircmp(1)fssnap(1M) ps(1) truss(1)pkgadd(1M)pkgchk(1M)pkgrm(1M)

相容於自訂 JumpStart 程式的升級

自訂 JumpStart 程式相容性可確保套裝軟體作為傳統 Solaris 安裝公用程式的一部份,可被增加與移除,如以下所示:

自訂 JumpStart 程式相容性亦可確保套裝軟體可以參與 Solaris 升級。若要與自訂 JumpStart 程式相容,套裝軟體還必須遵循自訂 JumpStart 程式以及 Solaris Live Upgrade 互動式開機環境需求中列出的互動式開機環境要求。

為有效使用自訂 JumpStart 程式,必須能夠增加或移除套裝軟體而無需使用者依系統提示輸入資訊。為避免使用者互動,請使用帶 -a 選項的 pkgadd 指令設定新的管理檔案。-a 選項可定義欲使用的安裝管理檔案,以代替預設管理檔案。使用預設檔案可能會造成系統提示使用者輸入更多資訊。您可以建立管理檔案以指示 pkgadd 略過這些檢查,並且無須使用者的確認而安裝套裝軟體。如需詳細資訊,請參閱線上援助頁 admin( 4)pkgadd( 1M)

下列範例顯示如何使用 pkgadd 管理檔案。

以下是一個安裝管理檔案的範例,它需要很少的與 pkgadd 公用程式的使用者互動。 除非套裝軟體需要的空間比系統提供的還要多, pkgadd 公用程式將利用此檔案,並在不需要使用者再鍵入任何資料的情況下安裝套裝軟體。

mail=

instance=overwrite

partial=nocheck

runlevel=nocheck

idepend=nocheck

space=ask

setuid=nocheck

confiict=nocheck

action=nocheck

basedir=default