/ubuntu-lukssuspend

Configure Ubuntu to purge LUKS key and suspend-to-RAM

Primary LanguageShell

Auto-builder for a functional Ubuntu LuksSuspend-to-RAM method.

Changes in this Fork

  • Suspends (sends SIGSTOP) to processes that cannot keep their hands off the disk (e.g. chrome).

Caveats

  • Works as-written with XFS and BTRFS
  • ext2, ext3, and ext4 filesystems must use the 'NOBARRIER' options
  • The default options will create, write to, and chroot to /boot/suspend.

Usage

  • Run 'mksuspend.sh <luks_device>'. This can be the short-name or the /dev/mapper/sdXn_crypt
  • Call /boot/suspend/suspend.sh

After a few second delay, the host will suspend to RAM. When the host resumes, you will be prompted for the encryption passphrase on vty8. When entered, it will return to calling process.

Process

This script performs the following actions:

  • Builds a CHROOT target with the necessary executables and libraries to perform cryptsetup and suspend-to-RAM
  • Copies dynamically-generated bash scripts into the CHROOT target folder
  • Places handling scripts and hooks for lid-close ACPI events
  • Configures logind default lid action to 'ignore'.
  • Restarts ACPId to pick up the changes.

Behavior should function immediately after executing the script.