diff options
Diffstat (limited to 'bin/mount-encryted-volume')
| -rwxr-xr-x | bin/mount-encryted-volume | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/bin/mount-encryted-volume b/bin/mount-encryted-volume new file mode 100755 index 0000000..1a7545e --- /dev/null +++ b/bin/mount-encryted-volume @@ -0,0 +1,41 @@ +#!/bin/bash + +set -e + +die () { + echo "$@" >&2 + exit 1 +} + +CONFIG=$HOME/.config/vars +[ -f "${CONFIG}" ] && die "${CONFIG} is missing" +source ${CONFIG} + + +[ -z "${REMOTE_DIR}" -o -z "${SSHFS_DIR}" -o "${ENCFS_DIR}" ] && die "missing vars" + +[ ! -d "$SSHFS_DIR" ] && mkdir "${SSHFS_DIR}" +[ ! -d "$ENCFS_DIR" ] && mkdir "${SSHFS_DIR}" +TEMOIN_FILE="$ENCFS_DIR/.temoin.txt" + +if [ -e "${TEMOIN_FILE}" ]; then + if [ -z "${1}" ] + then + sync-volume archives_administratives + if [ $? -ne 0 ] + then + read -n 1 -p "Quitter avec une synchronisation inachevée [Nyo]: " retour + [ "${retour^^}" = "N" ] || exit 1 + fi + fi + fusermount -u "$ENCFS_DIR" + fusermount -u "$SSHFS_DIR" + chmod 440 ${ENCFS_DIR} + echo "Repertoire demonte" +else + chmod 750 ${ENCFS_DIR} + sshfs -o idmap=user "${REMOTE_DIR}" "${SSHFS_DIR}" + #gksudo -p -m "Mot de passe ENFS" | encfs -S "${SSHFS_DIR}" "${ENCFS_DIR}" + encfs "${SSHFS_DIR}" "${ENCFS_DIR}" && echo "Repertoire monte" || echo "Echec du montage" + sync-volume archives_administratives +fi |
