43 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
		
		
			
		
	
	
			43 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
|   | <section xmlns="http://docbook.org/ns/docbook" | ||
|  |          xmlns:xlink="http://www.w3.org/1999/xlink" | ||
|  |          xmlns:xi="http://www.w3.org/2001/XInclude" | ||
|  |          version="5.0" | ||
|  |          xml:id="sec-luks-file-systems"> | ||
|  | 
 | ||
|  | <title>LUKS-Encrypted File Systems</title> | ||
|  | 
 | ||
|  | <para>NixOS supports file systems that are encrypted using | ||
|  | <emphasis>LUKS</emphasis> (Linux Unified Key Setup).  For example, | ||
|  | here is how you create an encrypted Ext4 file system on the device | ||
|  | <filename>/dev/sda2</filename>: | ||
|  | 
 | ||
|  | <screen> | ||
|  | $ cryptsetup luksFormat /dev/sda2 | ||
|  | 
 | ||
|  | WARNING! | ||
|  | ======== | ||
|  | This will overwrite data on /dev/sda2 irrevocably. | ||
|  | 
 | ||
|  | Are you sure? (Type uppercase yes): YES | ||
|  | Enter LUKS passphrase: *** | ||
|  | Verify passphrase: *** | ||
|  | 
 | ||
|  | $ cryptsetup luksOpen /dev/sda2 crypted | ||
|  | Enter passphrase for /dev/sda2: *** | ||
|  | 
 | ||
|  | $ mkfs.ext4 /dev/mapper/crypted | ||
|  | </screen> | ||
|  | 
 | ||
|  | To ensure that this file system is automatically mounted at boot time | ||
|  | as <filename>/</filename>, add the following to | ||
|  | <filename>configuration.nix</filename>: | ||
|  | 
 | ||
|  | <programlisting> | ||
|  | boot.initrd.luks.devices = [ { device = "/dev/sda2"; name = "crypted"; } ]; | ||
|  | fileSystems."/".device = "/dev/mapper/crypted"; | ||
|  | </programlisting> | ||
|  | 
 | ||
|  | </para> | ||
|  | 
 | ||
|  | </section> |