Updated: November 23, 2016
Back in 2008, I created a 125GB TrueCrypt file container on an external disk, so that in the case it got lost or stolen or something, the data stored there would not be immediate accessible to curious strangers. In 2016, I ran into a capacity problem. The volume could no longer accommodate all the data that I intended to copy. No more free space.
Most people solve this by creating a bigger container and then copying data into it. True, this is always an option, but could there be a more elegant way? I started exploring and then came across a curious, niche tool called extcv, specifically designed to extend, or rather, resize existing TrueCrypt volumes without reformatting. Let us explore.
Before we continue, a little warning
TrueCrypt. Ah yes. This product was discontinued not that long ago in a rather dramatic fashion by its owners, with some big claims how it was not secure and such. If you put all the fuss and fear aside, TrueCrypt is still a decent encryption product that can help you keep files secure, especially on mobile devices like notebooks and external disks.
There are other programs of this kind - including direct successors to TrueCrypt, but that's not the point. We're here to discuss the size and resize issue with volumes, and how to do this elegantly without too much work or overhead. Anything else is just needless security paranoia and philosophy, and that's not why we're here. If you're using TrueCrypt, you're using it, and you probably can't or won't just throw it away.
The second piece of this foreword is to warn you - changing filesystems and containers, encrypted or not, is always a risky operation that can end up with a total, irreversible loss of data. I strongly advise against resizing TrueCrypt volumes unless you have a second backup, preferably unencrypted, of the data stored inside, even for a very short duration while you carry out the resizing work. All that said, let's move on.
Extcv to the rescue
There are several checkboxes you must tick. Extcv works with TrueCrypt version 7.0a or earlier versions, and it requires the use of the NTFS filesystem inside the volumes. The risks are obvious. You may end up with corrupted containers that cannot be opened or mounted or whatnot. Now, to demonstrate, let's create an encrypted container first.
The problem what we're facing:
Anyhow, let's launch extvc and fix it! Start the program. You will get the explanation and disclaimer. Namely, you should use NTFS, and you should not perform this action on containers that include a hidden volume.
You will need to select the right file (or device) and provide the volume password. After this step, you will be presented with the option to resize it. Like TrueCrypt, you can use KB or MB or GB. Then, click Continue. The program will start its operation and hopefully complete successfully.
I mounted the volume through TrueCrypt without any problems and then examined the data stored inside the container. Everything looks and behaves fine. Good. Of course, working with old software against outdated and unsupported software sounds quite tricky, and you may not be willing to take your chances. Perfectly understandable. But at least you know there's a way.
Did you use it for your production container?
Now, the big question. Did I use this for my ancient and precious 125GB volume? Well, not just yet. It would be terribly hypocritical of me to tell you to do something without using it myself. Never my way. I am creating containers and testing them like mad, and so far, there are no issues. But that's never enough. Most importantly, the data stored on the external disk is neither the first nor the third copy, so one day soon, I will muster enough empirical confidence to complete the action on the external USB disk. That's where we are at the moment.
Extcv is a very interesting little utility. The list of benefits is just as long as the list of doubts, because you're using a third-party tool to manipulate sensitive personal data, with a significant risk of data loss or corruption. Encryption is never an easy one, especially when you run out of free space.
All that said, I do believe this program, despite its age and limited compatibility when it comes to TrueCrypt versions, offers a fairly robust and safe method of resizing containers without the long and protracted process of creation and formatting of new volumes and the subsequent process of data backup. If you intend to test, please first do so with non-essential stuff, thoroughly, create a second copy of your data, and only then commit to the resizing adventure. It should work, but it doesn't hurt to take precautions. Well, you've learned all there is for this little tutorial. When it comes to TrueCrypt, extcv is a nice little companion tool, and you might want to consider it for your arsenal. Job done.