fallocate doesn't work on enough filesystems to be useful, so I'm switching #2 to use truncate instead.
At least on EC2, it won't work for the ext3 filesystems in the Ubuntu base image.
truncate won't actually pre-allocate filesystem blocks, but otherwise works fine.