Solaris 9 9/04 安裝指南

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

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

封裝需求概述

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

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

表 G–1 需求資訊

安裝方法 

記錄成文的需求 

Solaris Live Upgrade 

自訂 JumpStart 程式 

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

非作用中啟動環境是作業環境的副本,而不是目前執行系統的副本。 Live Upgrade 或自訂 JumpStart 程式所使用的套裝軟體必須遵循下列需求:

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

$PKG_INSTALL_ROOT$BASEDIR 之差異概述

$PKG_INSTALL_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 程式,必須能夠加入或移除套裝軟體而無需使用者依系統提示輸入資訊。 為避免使用者互動,請使用 pkgadd 指令 -a 選項設定新的管理檔案。 -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