[VIDEO] Arch Linux with full disk encryption in (about) 15 minutes August 18, 2016 on Drew DeVault's blog

After my blog post emphasizing the importance of taking control of your privacy, I’ve decided to make a few more posts going over detailed instructions on how to actually do so. Today we have a video that goes over the process of installing Arch Linux with full disk encryption.

This is my first go at publishing videos on my blog, so please provide some feedback in the comments of this article. I’d prefer to use my blog instead of YouTube for publishing technical videos, since it’s all open source, ad-free, and DRM-free. Let me know if you’d like to see more content like this on my blog and which topics you’d like covered - I intend to at least release another video going over this process for Ubuntu as well.

Download video (WEBM)

The video goes into detail on each of these steps, but here’s the high level overview of how to do this. Always check the latest version of the Install Guide and the dm-crypt page on the Arch Wiki for the latest procedure.

  1. Partition your disks with gdisk and be sure to set aside a partition for /boot
  2. Create a filesystem on /boot
  3. (optional) Securely erase all of the existing data on your disks with dd if=/dev/zero of=/dev/sdXY bs=4096 - note: this is a correction from the command mentioned in the video
  4. Set up encryption for your encrypted partitions with cryptsetup luksFormat /dev/sdXX
  5. Open the encrypted volumes with cryptsetup open /dev/sdXX [name]
  6. Create filesystems on /dev/mapper/[names]
  7. Mount all of the filesystems on /mnt
  8. Perform the base install with pacstrap /mnt base [extra packages...]
  9. genfstab -p /mnt >> /mnt/etc/fstab
  10. arch-chroot /mnt /usr/bin/bash
  11. ln -s /usr/share/zoneinfo/[region]/[zone] /etc/localtime
  12. hwclock --systohc --utc
  13. Edit /etc/locale.gen to your liking and run locale-gen
  14. locale > /etc/locale.conf - note this only works for en_US users, adjust if necessary
  15. Edit /etc/hostname to your liking
  16. Reconfigure the network
  17. Edit /etc/mkinitcpio.conf and ensure that the keyboard and encrypt hooks run before the filesystems hook
  18. mkinitcpio -p linux
  19. Set the root password with passwd
  20. Configure /etc/crypttab with any non-root encrypted disks you need. You can get partition UUIDs with ls -l /dev/disk/by-partuuid
  21. Configure your kernel command line to include cryptdevice=PARTUUID=[...]:[name] root=/dev/mapper/[name] rw
  22. Install your bootloader and reboot!

Articles from blogs I read Generated by openring

hare-update assists in addressing breaking changes in your code

We’re working on a new tool to release along the next upcoming stable release of Hare (likely Hare 0.25.2, or 0.25.3, following our release policy) – hare-update. The coming Hare release includes a number of small breaking changes, as per usual during Hare’s…

via Blogs on The Hare programming language June 11, 2025

Open Source: Deceptive Power or Collective Governance?

In October 2024, it emerged that WordPress co-founder Matt Mullenweg has extensive power over the entire WordPress ecosystem, which 43% of all websites on the internet run on. When he exercised this power by seizing control of code that runs on tens of thou…

via Vlad's Website June 6, 2025

Summary of changes for May 2025

Hey everyone!This is the list of all the changes we've done to our projects during the month of May. 100r.co, updated Oquonie and water. Modal, the interpreter was ported to Uxn! Uxntal, the documentation has been completely redone! Hakum, added p…

via Hundred Rabbits May 31, 2025