aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorache <ache@ache.one>2018-01-15 01:34:29 +0100
committerache <ache@ache.one>2018-01-15 01:34:29 +0100
commit60203948cfc5a343dec3c3766209d4dafce0805e (patch)
treecad773aab75987ae3e8232997e9753a367fa0dec
parentInit autoMMS.py (diff)
Init crypted mount scripts
-rwxr-xr-xcmount.sh67
-rwxr-xr-xcumount.sh32
2 files changed, 99 insertions, 0 deletions
diff --git a/cmount.sh b/cmount.sh
new file mode 100755
index 0000000..a6580c5
--- /dev/null
+++ b/cmount.sh
@@ -0,0 +1,67 @@
+#!/bin/sh
+
+if [ -z "$1" ] ; then
+ echo 'Need a name to mount (if you know what i mean 💋)'
+ exit 1
+fi
+
+name="${1}"
+
+
+device=$(sudo cat /etc/crypttab | grep -v "^#" | grep '.' | tr -s ' ' | grep "^${name} " | cut -d' ' -f 2)
+rootkey=$(sudo cat /etc/crypttab | grep -v "^#" | grep '.' | tr -s ' ' | grep "^${name} " | cut -d' ' -f 3)
+
+res=0
+if [ -n "${device}" ] ; then
+ res=$(echo -e "${device}" | wc -l)
+fi
+
+if [ "${res}" -gt 1 ] ; then
+ echo 'Too many crypted part with that name, sry baby'
+ exit 2
+elif [ "${res}" -eq 0 ] ; then
+ echo "Didn't found that babe"
+ exit 3
+elif [ "${res}" -eq 1 ] ; then
+# echo '🍌 🍩'
+
+ if [ -n "${rootkey}" -a "${rootkey}" != 'none' ] ; then
+ sudo cryptsetup luksOpen --key-file "${rootkey}" "${device}" "${name}"
+ res=${?}
+ if [ "${res}" -ne 0 ] ; then
+ echo 'Error with the key-file' "${rootkey}"
+ echo 'Trying without'
+ res=0
+ rootkey=""
+ fi
+ fi
+
+ if [ -z "${rootkey}" -o "${rootkey}" = 'none' ] ; then
+ sudo cryptsetup luksOpen "${device}" "${name}"
+ res=${?}
+ fi
+
+ if [ "${res}" -eq 0 ] ; then
+ if sudo mount "/dev/mapper/${name}" ; then
+ echo 'Finish'
+ exit
+ else
+ echo 'Error while mounting'
+ echo 'undecrypting'
+ if sudo cryptsetup luksClose "${device}" "${name}" ; then
+ echo 'undecrypted'
+ exit 4
+ else
+ echo 'Shit, i fail'
+ exit 5
+ fi
+ fi
+ else
+ echo 'Error while decrypting'
+ exit 6
+ fi
+else
+ echo "I don't know why, but i can't mount him"
+ exit 7
+fi
+
diff --git a/cumount.sh b/cumount.sh
new file mode 100755
index 0000000..3a45c06
--- /dev/null
+++ b/cumount.sh
@@ -0,0 +1,32 @@
+#!/bin/sh
+
+if [ -z "$1" ] ; then
+ echo 'Need a name to umount'
+ exit 1
+fi
+
+name="${1}"
+
+mountpoint=$(lsblk -lo NAME,MOUNTPOINT | grep "${1}" | tr -s ' ' | cut -d' ' -f 2)
+
+if [ -z "${mountpoint}" ] ; then
+ echo "${name} not found"
+ exit 1
+fi
+
+if sudo umount "${mountpoint}" ; then
+ if sudo cryptsetup luksClose "${name}" ; then
+ echo 'Finish'
+ else
+ echo "Error : ${name} can't be closed"
+ exit 2
+ fi
+else
+ echo "Error : ${mountpoint} can't be umounted"
+ exit 3
+fi
+
+
+
+
+