My Raspberry Pi functions as a lokal NAS and data haven for backing up remote servers and all my clients. The data is stored in a truecrypt container on an external usb harddrive. The drive is mounted on bootup, as well as the decrypted container. If you follow my notes, please be aware that the password to unlock the files is stored in cleartext in the automount script and could show up when running e.g. ps. So maybe this isn’t the right solution when you grant access to your Pi to other people.
Create the two directories to mount the external harddrive and the truecrypt container.
sudo mkdir /mnt/{usb,truecrypt}
If you use NTFS as a filesystem on your external drive, install the ntfs-3g package and try mounting the it manually first:
pi@raspberrypi ~ $ sudo aptitude install ntfs-3g
pi@raspberrypi ~ $ mount -t ntfs-3g /dev/sda1 /mnt/usb
When everything works, add the permanent mount entry to your /etc/fstab:
/dev/sda1 /mnt/usb ntfs-3g defaults 0 0
To automount the truecrypt container on startup, install truecrypt like explained here and create the two init scripts for mounting and unmounting the container.
/etc/init.d/tc_mount
#!/bin/bash
### BEGIN INIT INFO
# Provides: tc_mount
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2
# Default-Stop:
# Short-Description: tc_mount
# Description: Mount the truecrypt container
### END INIT INFO
echo „Mounting truecrypt container“
/usr/local/bin/truecrypt -t -k „“ –protect-hidden=no –mount /mnt/usb/crypt /mnt/truecrypt/ -v -m=nokernelcrypto -p ‚YOURPASSWORD‘
exit 0
/etc/init.d/tc_unmount
#!/bin/bash
### BEGIN INIT INFO
# Provides: tc_unmount
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start:
# Default-Stop: 0 1 6
# Short-Description: tc_unmount
# Description: Unmount the truecrypt container
### END INIT INFO
echo „Unmounting truecrypt containers“
/usr/local/bin/truecrypt -d
exit 0
And add them to the correct runlevels:
pi@raspberrypi ~ $ sudo update-rc.d tc_mount start 02 2 .
pi@raspberrypi ~ $ sudo update-rc.d tc_unmount stop 02 0 1 6 .
Sources: