Solaris 9 Installationshandbuch

Unterschiede zwischen $PKG_INSTALL_ROOT und $BASEDIR - Übersicht

$PKG_INSTALL_ROOT ist der Speicherort des Root-Dateisystems (/) auf dem Rechner, zu dem Sie das Package hinzufügen. Der Speicherort wird auf das -R-Argument des Befehls pkgadd gesetzt. So wird beispielsweise beim Aufruf des folgenden Befehls $PKG_INSTALL_ROOT während der Package-Installation zu /a.


# pkgadd -R /a SUNWvxvm

$BASEDIR verweist auf das verschiebbare Basisverzeichnis, in dem verschiebbare Package-Objekte installiert werden. Hier werden nur verschiebbare Objekte installiert. Nicht verschiebbare Objekte (Objekte mit absoluten Pfaden in der Datei pkgmap) werden immer relativ zur inaktiven Boot-Umgebung installiert, nicht jedoch relativ zum aktuellen $BASEDIR. Wenn ein Package keine verschiebbaren Objekte aufweist, wird es als absolutes bzw. nicht verschiebbares Package bezeichnet. $BASEDIR ist nicht definiert und steht Package-Prozedurskripten nicht zur Verfügung.

Angenommen, die Datei pkgmap eines Packages enthält zwei Einträge:


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

In der Datei pkginfo ist $BASEDIR definiert:


BASEDIR=/opt

Bei Installation dieses Packages mit dem folgenden Befehl wird ls in /a/opt/sbin/ls, aber ls2 als /a/sbin/ls2 installiert.


# pkgadd -R /a SUNWtest