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