Here's my Ubuntu release update process.
- Make Ubuntu installation program to format the partition that held the previous Ubuntu version
- Format and configure existing boot partition as the new boot partition
- Configure existing swap partition as the new swap partition
- Install Ubuntu normally without dedicated home partition
After installation has finished, install cryptsetup.
$ sudo apt-get install cryptsetup
Then configure /etc/fstab file by adding configuration for swap and home. For example.
/dev/mapper/sda7_crypt /home ext4 defaults 0 2 /dev/mapper/sda5_crypt none swap sw 0 0
The actual values depend on your hard disk partitioning. Here's example from my laptop.
$ sudo fdisk -l Disk /dev/sda: 500.1 GB, 500107862016 bytes 255 heads, 63 sectors/track, 60801 cylinders, total 976773168 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x7250e0b9 Device Boot Start End Blocks Id System /dev/sda1 2048 24588287 12293120 27 Hidden NTFS WinRE /dev/sda2 24588288 24793087 102400 7 HPFS/NTFS/exFAT /dev/sda3 * 24793088 26746879 976896 83 Linux /dev/sda4 26748926 976773119 475012097 5 Extended /dev/sda5 26748928 34559999 3905536 82 Linux swap / Solaris /dev/sda6 34562048 132216831 48827392 83 Linux /dev/sda7 132218880 976773119 422277120 83 Linux
The next step is to configure /etc/crypttab by adding appropriate encryption setup. In my case it looks like this.
sda5_crypt /dev/sda5 /dev/urandom cipher=aes-cbc-essiv:sha256,size=256,swap sda7_crypt UUID=5a9c38c3-2aa9-433b-9efd-c0e9357d0811 none luks
The swap partition setup is "universal" and it should work on any computer (of course the correct partition may differ from this example). The swap is encrypted with a key that is randomly generated on each system startup.
For the home partition you have to know the UUID of the partition. Here's one way to find it.
$ sudo blkid /dev/sda1: LABEL="Recovery" UUID="78F82CACF82C6A98" TYPE="ntfs" /dev/sda2: LABEL="System Reserved" UUID="62ACA8E6ACA8B5C7" TYPE="ntfs" /dev/sda3: UUID="7d526d52-018a-4b0c-9e26-64f1143cf0da" TYPE="ext4" /dev/sda5: UUID="0d0178b1-ade5-416f-8535-82455a8febd5" TYPE="swap" /dev/sda6: UUID="b0d7a0b7-0bb8-4cf9-978a-f7c6ebb2126f" TYPE="ext4" /dev/sda7: UUID="5a9c38c3-2aa9-433b-9efd-c0e9357d0811" TYPE="crypto_LUKS" /dev/sdb1: LABEL="siirtoNTFS" UUID="494640E516B11A6B" TYPE="ntfs" /dev/sdb2: LABEL="siirto" UUID="570857a6-4ab3-4d4b-99a2-88d383d3e588" TYPE="ext4"
With this configuration, the system should ask for home partition's encryption key during system startup and everything should work as before.