summaryrefslogtreecommitdiff
path: root/scripts/install/install-functions
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/install/install-functions')
-rwxr-xr-xscripts/install/install-functions24
1 files changed, 22 insertions, 2 deletions
diff --git a/scripts/install/install-functions b/scripts/install/install-functions
index b3ec42c1..feeeb489 100755
--- a/scripts/install/install-functions
+++ b/scripts/install/install-functions
@@ -86,10 +86,10 @@ tolower () {
}
# Validates a user response. Returns the response if valid.
-# Returns the default is the user just hits enter.
+# Returns the default is the user just hits enter.
# Returns nothing if not valid. Default parameter is $1.
# Options are in $2. If options are defined return must be a member
-# of the enum.
+# of the enum.
get_response () {
local ldefault=$(tolower "$1")
local loptions=$(tolower "$2")
@@ -370,6 +370,26 @@ EOF
return 1
}
+# try to unmount. log any errors and return the appropriate status.
+# $1: arguments for umount
+try_unmount ()
+{
+ args="$*"
+ output=$(eval "umount $args 2>&1")
+ status=$?
+ if [ $status == 0 ]; then
+ return 0
+ fi
+ # error
+ cat <<EOF
+Error trying to unmount a partition/directory.
+Please see $INSTALL_LOG for details.
+EOF
+ lecho 'Error trying to unmount a partition/directory.'
+ lecho "umount $args\n$output"
+ return 1
+}
+
# Find 2 drives of the same size.
get_size_raid ()
{