diff options
Diffstat (limited to 'debian/mount.preinst')
-rw-r--r-- | debian/mount.preinst | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/debian/mount.preinst b/debian/mount.preinst new file mode 100644 index 0000000..a0dd43c --- /dev/null +++ b/debian/mount.preinst @@ -0,0 +1,52 @@ +#!/bin/sh -e + +# Debian mount preinst +# LaMont Jones <lamont@debian.org> + +chrooted() { + if [ "$(stat -c %d/%i /)" = "$(stat -Lc %d/%i /proc/1/root 2>/dev/null)" ]; then + # the devicenumber/inode pair of / is the same as that of /sbin/init's + # root, so we're *not* in a chroot and hence return false. + return 1 + fi + return 0 +} + +case "$1" in + install) + ;; + + upgrade) + version=$2 + DISTRO=$(lsb_release -is 2>/dev/null || echo Debian); + + if [ Debian = "$DISTRO" ]; then + if [ -f /proc/mounts ] && ! chrooted; then + NFS_IN_USE=$(sed -n '/^[^ ]* [^ ]* nfs /p' /proc/mounts) + else + NFS_IN_USE="" + fi + if [ -n "$NFS_IN_USE" ] && [ ! -x /sbin/mount.nfs ] ; then + cat << EOF +You have NFS mount points currently mounted, and this version of mount +requires that nfs-common be upgraded before NFS mounts will work. + +Aborting install. +EOF + exit 1 + fi + fi + + ;; + + abort-upgrade) + ;; + + *) + echo "preinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + + +#DEBHELPER# |