summaryrefslogtreecommitdiffstats
path: root/bin
diff options
context:
space:
mode:
Diffstat (limited to 'bin')
-rwxr-xr-xbin/mount-encryted-volume41
-rwxr-xr-xbin/sync-volume35
2 files changed, 76 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
diff --git a/bin/sync-volume b/bin/sync-volume
new file mode 100755
index 0000000..2cab139
--- /dev/null
+++ b/bin/sync-volume
@@ -0,0 +1,35 @@
+#!/bin/bash
+
+PROFIL="${1}"
+IS_AUTO="${2}"
+
+if [ ! -e "$HOME/.unison/${PROFIL}.prf" ]
+then
+ echo "Le profil ${PROFIL} n'existe pas" >&2
+ exit 1
+fi
+
+ROOT=$(grep -r "^root *=" $HOME/.unison/${PROFIL}.prf | sed -e 's/^root *= *//')
+for dossier in ${ROOT}
+do
+ if [ ! -x "${dossier}" ]
+ then
+ if [ -z "${IS_AUTO}" ]
+ then
+ echo "Le dossier ${dossier} n'est pas lisible" >&2
+ exit 1
+ else
+ exit 0
+ fi
+ fi
+done
+
+
+if [ -z "${IS_AUTO}" ]
+then
+ unison -ui text "${PROFIL}"
+else
+ nodeletion=$(grep -r "^root *=" $HOME/.unison/${PROFIL}.prf | sed -e 's/root *=/-nodeletion/')
+
+ unison -ui text -silent -batch $nodeletion "${PROFIL}"
+fi