Вроде осилил: truecrypt --keyfiles=${keyfiles} --password=${password} ${container} ${mountpoint}
Это дико небезопасно - пароль будет виден в списке процессов в командной строке, может сохраниться в истории команд шелла и т.д.
Я бы советовал обходиться только keyfile'ами. Хотя, на мой вкус, любое неинтерактивное монтирование криптоконтейнера - фуфло с точки зрения безопасности.
А как монтировать том от имени пользователя, ведь я монтирую его в папку лежащую в home?
Что значит "монтировать от имени пользователя"? Просто сделай владельцем файлов и папок в своем контейнере нужного пользователя.
И размонтируется ли все корректно при перезагрузке?
При перезагрузке, ясен пень, все отмонтируется. Корректно или нет - зависит от того, насколько корректной была перезагрузка. Если нажать ресет во время записи - конечно, будет потеря данных.
А вот при разлогинивании пользователя, конечно, ничего не размонтируется само. Тут надо другие механизмы использовать.
И ещё то, что том отображается на рабочем столе меня совсем не радует - как убрать?
Монтируй в папку, не лежащую в /home и /media, а в домашнюю папку сделай симлинк.