# /home/pi/bin/cryptmount_bak_mount.sh
# sauvegarde et montage cryptmount
src=/media/pi/root/home/pi/cryptmount
dstRoot=/media/pi/A-300GB/archives/cryptmount
go_backup () { # sauvegarde
if [ "x$1" = "x-h" ]; then # aide
echo "Options :"
echo " -h cette aide"
echo " -1 sauvegarde de /media/pi/root/home/pi/cryptmount/3en1.fs"
echo " -2 sauvegarde de /media/pi/root/home/pi/cryptmount/archive_3en1.fs"
echo "<vide> sauvegarde complète"
elif [ "x$1" = "x-1" ]; then # on copie seulement 3en1.fs
for i in 3en1.key archive_3en1.key; do
sudo cp $src/$i $dst/$i.$laDate
done
for i in 3en1.fs archive_3en1.fs; do
dd status=progress if=$src/$i of=$dst/$i.${laDate}.cryptmount
done
else # on copie tout
sudo cp /etc/cryptmount/cmtab $dst/${laDate}.cmtab
for i in 3en1.key archive_3en1.key; do
sudo cp $src/$i $dst/${laDate}.$i
done
sudo chmod 777 $dst/*key*
sudo chmod 777 $dst/*cmtab*
for i in 3en1.fs archive_3en1.fs; do
dd status=progress if=$src/$i of=$dst/${laDate}.$i.cryptmount
done
fi
}
dossiers () { # contrôle des dossiers
if [ -d $src ]; then
echo $(date +%r) "Dossier source OK : $src"
else
echo $(date +%r) "Dossier source $src absent"
fi
dirAnnee=$(date '+%Y')
dirMois=$(date '+%m')
laDate=$(date '+%Y%m%d_%Hh%M')
dirYear=${dstRoot}/${dirAnnee}
[ -d ${dirYear} ] || mkdir ${dirYear}
dst=${dstRoot}/${dirAnnee}/${dirMois}
[ -d ${dst} ] || mkdir ${dst}
if [ -d $dst ]; then
echo $(date +%r) "Dossier backup OK : $dst"
go_backup $1
else
echo $(date +%r) "Dossier backup $dst absent"
fi
}
montage () { # montage cryptmount
read -p "Entrer le mot de passe cryptmount svp : " -s password
echo $password > /tmp/cryptmount.pass
echo >> /tmp/cryptmount.pass
dossiers $1
cryptmount 3en1 --passwd-fd 3 3< /tmp/cryptmount.pass
cryptmount archive_3en1 --passwd-fd 3 3< /tmp/cryptmount.pass
for i in $(seq 1 1 10); do
dd if=/dev/zero of=/tmp/cryptmount.pass count=1 bs=1M
done
rm /tmp/cryptmount.pass
}
montage $1