$PKG_INSTALL_ROOT ist der Speicherort des Root-Dateisystems (/) auf dem Rechner, zu dem Sie das Package hinzufügen. Diese Variable wird auf das -R-Argument des Befehls pkgadd gesetzt. Angenommen, der folgende Befehl wird ausgeführt:
# pkgadd -R /a SUNWvxvm |
In diesem Fall wird während der Installation des Package $PKG_INSTALL_ROOT dem Verzeichnis /a vorangestellt.
$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 zum alternativen Root-Dateisystem (/) installiert, nicht jedoch relative zum aktuellen $BASEDIR. Wenn ein Package keine verschiebbaren Objekte aufweist, wird das Package als absolutes bzw. nicht verschiebbares Package bezeichnet. $BASEDIR ist nicht definiert und steht Package-Prozedurskripten nicht zur Verfügung.
Angenommen, die Datei pkgmap eines Package 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 |
Außerdem ist in der Datei pkginfo $BASEDIR definiert:
BASEDIR=/opt |
Angenommen, dieses Package wird mit dem folgenden Befehl installiert:
# pkgadd -R /a SUNWtest |
ls wird in /a/opt/sbin/ls installiert, aber ls2 wird als /a/sbin/ls2 installiert.