ROOTDIR=
ROOTDIR_REL=
-PKGCFGBASE=
-PKGCFGBASE_REL=
VSERVERDIRNAME=
VDIR=
{
local dst=$1/$2
case "$3" in
- c|b) mknod -m$6 "$dst" $3 $4 $5;;
- d) mkdir -p -m$4 "$dst";;
- f) touch "$dst"
+ (c|b) mknod -m$6 "$dst" $3 $4 $5;;
+ (d) mkdir -p -m$4 "$dst";;
+ (f) touch "$dst"
chmod $4 "$dst"
;;
- *) echo "Unknown dev-entry mode '$3'" >&2
+ (*) echo "Unknown dev-entry mode '$3'" >&2
false
;;
esac
for file in "$i"/*; do
test -e "$file" || continue
case "$file" in
- */CVS) test ! -d "$file" || continue;;
- *.rpmsave|*.rpmnew|*.rpmorig)
+ (*/CVS) test ! -d "$file" || continue;;
+ (*.rpmsave|*.rpmnew|*.rpmorig)
continue;;
esac
{
test -z "$ROOTDIR" || return 0
- for item in "\"$CONFDIR/.defaults/vdirbase\" 1" "/vservers"; do
+ for item in "\"$CONFDIR/.defaults/vdirbase\" 1" "$DEFAULT_VSERVERDIR"; do
eval set -- "$item"
ROOTDIR=$1
ROOTDIR_REL=$2
}
}
-function _setPkgCfgBase
-{
- test -z "$PKGCFGBASE" || return 0
-
- for item in "\"$CONFDIR/.defaults/apps/pkgmgmt/base\" 1" "$ROOTDIR/.pkg"; do
- eval set -- "$item"
- PKGCFGBASE=$1
- PKGCFGBASE_REL=$2
- test ! -d "$PKGCFGBASE" || break
- done
-
- test -d "$PKGCFGBASE" || {
- echo "pkgcfgbase-dir '$PKGCFGBASE' does not exists or is invalid"
- exit 1
- }
-}
-
-function _setPkgCfg
-{
- _setPkgCfgBase
-
- test -z "$PKGCFGDIR" || return 0
- PKGCFGDIR="$PKGCFGBASE/$VSERVERDIRNAME"
-}
-
function _setVserverDir
{
test -z "$VSERVERDIRNAME" || return 0
}
## Usage: initFilesystem [force]
-function initFilesystem
+function base.initFilesystem
{
test -z "$1" || _renameVserverCfg
test ! -d "$VDIR" -a ! -d "$SETUP_CONFDIR" || {
exit 1
} >&2
- mkdir -p "$SETUP_CONFDIR"/apps/pkgmgmt "$VDIR"/{dev/pts,etc} "$SETUP_LOCKREVDIR"
+ mkdir -p -m755 "$VDIR"
+ chattr -t "$VDIR"
+ mkdir -p -m755 "$SETUP_CONFDIR"/apps "$VDIR"/{dev/pts,etc} "$SETUP_LOCKREVDIR"
ln -s "$VDIR" "$SETUP_CONFDIR/vdir"
- test -z "$PKGCFGDIR" || {
- ln -s "$PKGCFGDIR" "$SETUP_CONFDIR/apps/pkgmgmt/base"
-
- test "$_EXECDIR" = / || ln -s "$_EXECDIR" "$confdir/apps/pkgmgmt/execdir"
- }
-
local spec
while read spec; do
makeDevEntry "$VDIR"/dev $spec
"$DISTRIBDIR/$DISTRIBUTION"/files/hosts "$DISTRIBDIR"/defaults/files/hosts ""
for i in nsswitch.conf krb5.conf krb.conf krb.realms ldap.conf localtime resolv.conf; do
- findAndCopy "$VDIR"/etc/$i "$CONFDIR/.defaults/files/$i" "$CONFDIR/.distributions/$DISTRIBUTION"/files/$i" ""
+ findAndCopy "$VDIR"/etc/$i "$CONFDIR/.defaults/files/$i" "$CONFDIR/.distributions/$DISTRIBUTION/files/$i" ""
done
}
-function initVariables
+function base.initVariables
{
_setRootDir
_setVserverDir
- _setPkgCfg
_setVdir
findFile _DEV_FILE "$CONFDIR/.distributions/$DISTRIBUTION/devs" "$DISTRIBDIR/$DISTRIBUTION/devs" "$DISTRIBDIR/defaults/devs"
findDir _EXECDIR "$CONFDIR/.distributions/$DISTRIBUTION/execdir" "$DISTRIBDIR/$DISTRIBUTION/execdir" /
findFile BUILD_INITPRE "$CONFDIR/.distributions/$DISTRIBUTION/initpre" "$DISTRIBDIR/$DISTRIBUTION/initpre" ""
findFile BUILD_INITPOST "$CONFDIR/.distributions/$DISTRIBUTION/initpost" "$DISTRIBDIR/$DISTRIBUTION/initpost" ""
- findDir PKGDIR "$CONFDIR/.distributions/$DISTRIBUTION/pkgs" "$DISTRIBDIR/$DISTRIBUTION/pkgs" /
}