From ed50e3fa041b35f274a30e0f2ac425252485e7f0 Mon Sep 17 00:00:00 2001 From: cynix Date: Mon, 22 Jun 2020 00:19:02 +1000 Subject: [PATCH] Fix deduplication in 'mount' command as well --- usr/local/share/bastille/mount.sh | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/usr/local/share/bastille/mount.sh b/usr/local/share/bastille/mount.sh index e65d0b8d..71665f62 100644 --- a/usr/local/share/bastille/mount.sh +++ b/usr/local/share/bastille/mount.sh @@ -105,7 +105,8 @@ for _jail in ${JAILS}; do echo -e "${COLOR_GREEN}[${_jail}]:${COLOR_RESET}" ## aggregate variables into FSTAB entry - _fstab_entry="${_hostpath} ${bastille_jailsdir}/${_jail}/root/${_jailpath} ${_type} ${_perms} ${_checks}" + _jailpath="${bastille_jailsdir}/${_jail}/root/${_jailpath}" + _fstab_entry="${_hostpath} ${_jailpath} ${_type} ${_perms} ${_checks}" ## Create mount point if it does not exist. -- cwells if [ ! -d "${bastille_jailsdir}/${_jail}/root/${_jailpath}" ]; then @@ -116,14 +117,14 @@ for _jail in ${JAILS}; do fi ## if entry doesn't exist, add; else show existing entry - if ! grep -q "${_jailpath}" "${bastille_jailsdir}/${_jail}/fstab" 2> /dev/null; then + if ! egrep -q "[[:blank:]]${_jailpath}[[:blank:]]" "${bastille_jailsdir}/${_jail}/fstab" 2> /dev/null; then if ! echo "${_fstab_entry}" >> "${bastille_jailsdir}/${_jail}/fstab"; then echo -e "${COLOR_RED}Failed to create fstab entry: ${_fstab_entry}${COLOR_RESET}" exit 1 fi echo "Added: ${_fstab_entry}" else - grep "${_jailpath}" "${bastille_jailsdir}/${_jail}/fstab" + egrep "[[:blank:]]${_jailpath}[[:blank:]]" "${bastille_jailsdir}/${_jail}/fstab" fi mount -F "${bastille_jailsdir}/${_jail}/fstab" -a echo