summaryrefslogtreecommitdiff
path: root/scripts/install/install-functions
diff options
context:
space:
mode:
authorJames Davidson <james.davidson@vyatta.com>2012-10-19 15:59:56 -0700
committerJames Davidson <james.davidson@vyatta.com>2012-10-19 15:59:56 -0700
commit5b2bae39489a1746b0cda648aefbd2c853589b9e (patch)
tree9ed48eb555ada8bcbb119b8ab0d9c32d13a4cb5b /scripts/install/install-functions
parent95b26e3dc49fca7724177abee881d881a257859e (diff)
downloadvyatta-cfg-system-5b2bae39489a1746b0cda648aefbd2c853589b9e.tar.gz
vyatta-cfg-system-5b2bae39489a1746b0cda648aefbd2c853589b9e.zip
Support and switch to overlayfs
Diffstat (limited to 'scripts/install/install-functions')
-rwxr-xr-xscripts/install/install-functions20
1 files changed, 19 insertions, 1 deletions
diff --git a/scripts/install/install-functions b/scripts/install/install-functions
index 34ced705..99d39dc9 100755
--- a/scripts/install/install-functions
+++ b/scripts/install/install-functions
@@ -290,7 +290,7 @@ is_union_install ()
return 1
fi
if grep -q ' /live/image [^ ]\+ rw' /proc/mounts \
- && grep -q 'unionfs / unionfs ' /proc/mounts; then
+ && egrep -q '(union|overlay)fs / (union|overlay)fs ' /proc/mounts; then
return 0
else
return 1
@@ -333,6 +333,24 @@ get_new_version ()
# couldn't find it
}
+# Generate mount options based on the type of union mount
+gen_mopts ()
+{
+ local mnttype=$1
+ local upper=$2
+ local lower=$3
+ local mntpoint=$4
+
+ case "$1" in
+ overlayfs)
+ echo "-t $mnttype -o noatime,upperdir=$upper,lowerdir=$lower $mnttype $mntpoint"
+ ;;
+ *)
+ echo "-t $mnttype -o noatime,dirs=$upper=rw:$lower=ro $mnttype $mntpoint"
+ ;;
+ esac
+}
+
# try to mount. log any errors and return the appropriate status.
# $1: arguments for mount
try_mount ()