truecrypt_scripts/truecrypt_init.sh
author ft
Mon, 28 Jul 2014 15:27:10 +0200
changeset 15 f6fc3ab7f0c9
parent 14 4762c3abc17a
child 16 d1a3476471ca
permissions -rwxr-xr-x
added init_manager
added run_initlistener
     1 #!/bin/sh
     2 
     3 BASEDIR="$(dirname $0)"
     4 DEVICE="$1"
     5 MOUNTPOINT="$2"
     6 PASSWORD="$3"
     7 KEYFILE="$4"
     8 
     9 if [ -r "$BASEDIR/truecrypt_config.cfg" ]
    10 then
    11 	. "$BASEDIR/truecrypt_config.cfg"
    12 else
    13 	echo "truecrypt_config.cfg not found" >&2
    14 	exit 1
    15 fi
    16 
    17 # make sure to have "/dev/sdb" (not "/dev/sdb1")
    18 #DEVICE="${DEVICE:0:8}" the bash way does not work in dash -.-
    19 DEVICE="$(echo "$DEVICE" | awk '{print substr($1,0,9)}')"
    20 
    21 # make sure the device is not mounted (always run the init_manger script here!)
    22 init_manager.sh "$DEVICE"
    23 
    24 
    25 if [ -z "$KEYFILE" ]
    26 then
    27 	message="$($tc_cmd -c --non-interactive --quick --filesystem=none --encryption=AES --hash=RIPEMD-160 -p "$PASSWORD" "$DEVICE")"
    28 	result="$?"
    29 else
    30 	message="$($tc_cmd -c --non-interactive --quick --filesystem=none --encryption=AES --hash=RIPEMD-160 -p "$PASSWORD" -k "$KEYFILE" "$DEVICE")"
    31 	result="$?"
    32 fi
    33 	
    34 if [ "$result" != "0" ]
    35 then
    36 	exit 1
    37 fi
    38 
    39 
    40 
    41 if [ -z "$KEYFILE" ]
    42 then
    43 	message="$message\n$($tc_cmd --non-interactive --filesystem=none -p "$PASSWORD" "$DEVICE")"
    44 	result="$?"
    45 else
    46 	message="$message\n$($tc_cmd --non-interactive --filesystem=none -p "$PASSWORD" -k "$KEYFILE" "$DEVICE")"
    47 	result="$?"
    48 fi
    49 	
    50 if [ "$result" != "0" ]
    51 then
    52 	exit 1
    53 fi
    54 
    55 
    56 
    57 
    58 
    59 TC_DEVICE=$(truecrypt -l | awk '{print $3}')
    60 
    61 message="$message\n$(mkfs.ntfs --quick "$TC_DEVICE")"
    62 result="$?"
    63 
    64 if [ "$result" != "0" ]
    65 then
    66 	exit 1
    67 fi
    68 
    69 mount "$TC_DEVICE" "$MOUNTPOINT" 
    70 
    71 echo "$message"
    72 exit 0