• Home
  • About
  • Contact
  • Store

IT from Scratch

Small Business IT from the ground up

How to Install Ubuntu Server 12.04 with Encrypted LVM on RAID1

July 30, 2013 By The New Guy 22 Comments

Manual Hard Drive Partitioning

If you don’t care about the underlying principles of what we’re doing here, feel free to skip ahead to the screenshots. If you do care, keep reading.

Overview

Understanding how this process works will make the whole thing go a lot more smoothly, and should prepare you to set up variations of this partitioning/encryption scheme in the future.

For instance, perhaps you want to set up a RAID5 instead of a RAID1. You can do that using the same principles that I’m using in this tutorial.

In this tutorial we have two hard drives of the same size (8 GB). We are going to create two partitions on each drive. One partition is 550 MB. This is for the /boot partition. The other one is the rest of the drive — approximately 7.5 GB — and will be used for the root filesystem. You might want to create a separate partition for /home, /tmp, /var, or any other directory in the filesystem, but I’m not interested in that, so I’m only using these two. If you want to add others, feel free.

Whatever partitions you make need to be identical on each drive because we are going to use those partitions to create our arrays. After we have things partitioned, we create a RAID1 array for each partition. If you have more hard drives, this is where you can choose a different RAID set up if you’d like. Just make sure you partition the drives the same way.

Once the arrays are set up, we are going to create a volume group on the array for the root filesystem. Inside that volume group will be a logical volume for the swap space and one for the root filesystem.

After those are created, we will create an encrypted filesystem in each of the logical volumes: an encrypted filesystem for the swap space, and one for the root filesystem.

So in summary we will have our physical drives creating RAIDs, on which we will have a logical volumes that each contain an encrypted filesystem. Again: Drives > RAIDs > LVM > LUKS. Some guides will recommend doing Drives > RAIDs > LUKS > LVM, but having the LUKS inside the LVM instead of the other way around is the better way to have it in case you ever want to increase your logical volumes (which is half the point of having LVM in the first place).

According to this Linux RAID guide having LUKS inside LVM is the only way to be able to increase the LVM size. In my experience when people say something is impossible with Linux, they are usually wrong, however it’s easier to do things the way they were designed to be done.

Enough chit-chat. Let’s get to it.

Pages: 1 2 3 4 5 6 7 8

Filed Under: Scratch

Comments

  1. George Pligor says

    October 1, 2013 at 9:05 am

    Now with the new installers the bootable flag cannot be set to on for the raid partitions which means you cannot configure raid 🙁 Moreover the boot now is by default set to EFIboot which complicates things even better. The combination of raid 1 and lvm is critical for professional environments. This is a great tutorial. Could you update it? That would be awesome. Thanks!

    Reply
    • The New Guy says

      November 22, 2013 at 9:56 am

      I’m not sure what you mean by “the new installers.”

      Reply
      • Mr.Gosh says

        July 23, 2015 at 6:33 am

        he means the installers from 14.04 – these changed many things…

        Reply
  2. Jonathan Corbett says

    November 20, 2013 at 2:49 am

    Thank you — this was extremely helpful!!

    Reply
    • The New Guy says

      November 22, 2013 at 9:55 am

      Hey, Jonathan! Glad to hear it helped.

      Reply
  3. Gary Attaway says

    November 22, 2013 at 1:10 am

    Great tutorial. Thanks for taking the time to do this.

    Reply
    • The New Guy says

      November 22, 2013 at 9:56 am

      Thanks, Gary. Glad to help.

      Reply
  4. Gary Attaway says

    November 22, 2013 at 8:22 am

    I am having a problem with this setup. If I unplug either drive, the system will not boot. I get the error message: “Begin: Waiting for encrypted source device……”. So far I have not been able to find any help on what the solution to this is.

    Thank you,
    Gary

    Reply
    • Tony says

      August 4, 2014 at 5:28 pm

      The instructions here are very clear and helpful. BUT I built it with Ubuntu Server 14.04.1 and have the same problem as Gary – if I unplug either drive and boot, the system says “no volume groups found … waiting for encrypted source device”

      I then rebuilt with RAID->LUKS->LVM rather than RAID->LVM->LUKS but get exactly the same problem.

      Lst time I tried this (in 2010) the same problem cropped up. I really don’t think Ubuntu has paid much attention to the need for encrypted RAID to work.

      Reply
    • Tony says

      August 4, 2014 at 8:44 pm

      I even tried putting a clean disk in place of the “removed” disk to see if it rebuilt, but still says just “waiting for encrypted source device”.

      I gave up on Ubuntu for this. Instead I installed a minimal version of Debian 6.0.10 and the encrypted RAID works perfectly; that is removing either drive still allows you to enter your passphrase and log in.

      Seems to me there is no point using Ubuntu for encryption with RAID if you can’t boot when a drive fails. And since I am about to build a HP microserver for file storage, I do not want to get burnt by a buggy RAID/Encryption setup.

      Thanks “the new guy” for the detailed instructions though, they are probably applicable to Debian and maybe other OS’s too.

      Reply
  5. Alan Netherclift says

    January 8, 2014 at 7:02 am

    Hi The New Guy.

    I also have “The new installer”, downloaded today and the bugs that George Pligor speaks of are also preventing me from being able to configure a software RAID 1 array on Ubuntu 12.04.3 LTS 64-bit Server.

    Some of the changes include:
    Not being given a choice to make a partition Primary or Logical.
    An added line to give a partition a name
    The inability to set the Bootable Flag to “on”.

    The bootable flag of course is the killer. It means grub will not instal.

    I am unsure why they changed the installer, but I really wish they hadn’t.

    I would really like to get my hands on the old installer because the new installer doesn’t recognize a hardware RAID1 array setup in the Intel RAID Utility on my Gigabyte Z87M-D3HP Motherboard either.

    Reply
  6. Alan Netherclift says

    January 9, 2014 at 4:50 am

    OK, so there is no such thing as a “new installer”

    turns out the problem was that I was using 3TB HDDs. anything bigger the 2TB and the Partition table needs to be forced to GPT.
    The current installer is not able to cope with rives larger than 2TB for RAID.

    You need to set the partitions up first in something like GParted (I used GParted Live CD, or you can use Ubuntu Desktop Live DVD and use its GParted.)

    explicitly set the Partition table to GPT.
    create a partition at least 1.0MB with no file system and set its flag “biosgrub”
    create your swap partition and set its flag “raid”
    create your main partition and set its flag “raid”
    repeat for the other HDD

    exit and begin normal instal.

    Once you get to the Partitioner, the partitions are already setup, just do the RAID Configuration.
    Create MD swap
    create MD main
    back in the partitioner, choose swap in the array and choose “use as” – swap area
    choose the main in the array and choose “use as” – ext4 – mount – / (root)
    DONE.
    not need to worry about setting bootable flag.
    Finish and write changes to disk.

    Install will then work.

    This is only for HDDs above 2TB that this is necessary.

    solution found here:
    http://ubuntuforums.org/showthread.php?t=2109438

    Reply
    • The New Guy says

      January 18, 2014 at 11:00 pm

      Thanks for your input, Alan. Those bigger drives pose some interesting challenges.

      Reply
    • nn says

      April 2, 2016 at 5:24 pm

      I read this 2 years later and it’s going to save my day! I had no idea the 2GB limit was a problem, took me forever to start searching and here, of all places my search hits sent me to, at last I find a decent explanation…
      Thx a zillion!

      Reply
  7. Joe says

    January 18, 2014 at 6:47 pm

    This guide was great – thanks for taking the time to prepare!

    Reply
  8. Benson says

    January 23, 2014 at 2:38 pm

    Hi The New Guy,

    Thanks for the effort , the tutorial is clear and very helpful.

    I have a question, need advise / help.
    With the same setup like the example with a RAID 1 with 2 drives setup , if one of drive is dead and what steps to recover the array after a brand new unformatted hard drive is replaced .

    Reply
  9. Ally B says

    February 1, 2014 at 8:50 am

    Good documentation like this is priceless thank you for taking the time to write it 🙂 I am interested in Ubuntu administration and will be following this site for future entries

    Reply
  10. XCiber says

    February 3, 2014 at 12:16 am

    There be any problems with an encrypted partition by adding another PV in LVM? Could you describe the process more?
    1) Create new PV (only one drive without MD for simplify): pvcreate /dev/sdc
    2) Add PV to VG: vgextend linus /dev/sdc
    3) Extend LV: lvextend -LXXX /dev/linus/root
    4) Anything with /dev/maper/linux-root_crypt??
    5) Resize fs: resize2fs /dev/maper/linux-root_crypt

    Reply
    • XCiber says

      February 3, 2014 at 11:45 pm

      4) cryptsetup resize…

      🙂

      Reply
  11. metrik says

    March 18, 2014 at 1:06 pm

    Thank You!
    This is extremely helpful and easy to follow!

    Reply
  12. Marvin says

    June 3, 2015 at 5:00 pm

    Is not /home missing in this tutorial or is it created automatically within / ?

    Reply
  13. ram says

    November 8, 2015 at 2:58 pm

    Awesome tutorial! Thanks a lot!

    Reply

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Click Here for 500 MB free VPN connection through Private Tunnel

Recent Posts

  • How to Get the macOS Catalina Installer, Post Big Sur
  • Mac: How to Get SHA1 Hash
  • iTunes error: “You do not have enough access privileges for this operation”
  • Is Websense Filtering My Internet Traffic?
  • How to Delete a Mac VPN Profile
  • Home
  • About
  • Contact
  • Store

Copyright © 2025 ·WP-Ubuntu