lvcreate -L 4G -n swap_1 ubuntu--vg

lvcreate -L 4G -n swap_1 ubuntu--vg

我只是想在我的笔记本上安装 Ubuntu 22.04,但我需要启用全盘加密,并且我想定义交换分区的大小。

在搜索答案时,我看到多次提到 Ubuntu 22 不需要交换分区,因为它会使用交换文件。但是,如果我继续默认安装(加上启用 FDE),我无论如何都会得到一个交换分区:

nvme0n1               259:0    0 238.5G  0 disk  
├─nvme0n1p1           259:1    0   512M  0 part  
├─nvme0n1p2           259:2    0   1.7G  0 part  
└─nvme0n1p3           259:3    0 236.3G  0 part  
  └─crypt             253:0    0 236.3G  0 crypt 
    ├─vgubuntu-root   253:1    0 234.4G  0 lvm   
    └─vgubuntu-swap_1 253:2    0   1.9G  0 lvm   

因此我按照以下教程进行了全新安装:(它们基本相同

  1. https://help.ubuntu.com/community/Full_Disk_Encryption_Howto_2019
  2. https://www.tecmint.com/encrypt-disk-installing-ubuntu/

注意:这是一款 NVMe 笔记本

按照教程,我运行了命令,没有任何错误,但在分区时收到警告:

Warning: The kernel is still using the old partition table.
The new table will be used at the next reboot or after you
run partprobe(8) or kpartx(8)

sgdisk --print $DEV预期的回报:

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048         1574911   768.0 MiB   8301  /boot
   2         1574912         1579007   2.0 MiB     EF02  GRUB
   3         1579008         1841151   128.0 MiB   EF00  EFI-SP
   5         1841152       500118158   237.6 GiB   8301  rootfs

然而,当我开始使用 LUKS 时,第一次它按预期工作,但第二个命令失败: 该命令有效:

cryptsetup luksFormat --type=luks1 ${DEVP}1 

然后这个命令失败:

# cryptsetup luksFormat --type=luks1 ${DEVP}5
Device /dev/nvme0n1p5 does not exist or access denied.

我也尝试过这样的方法:

# cryptsetup luksFormat ${DEVP}5
Device /dev/nvme0n1p5 does not exist or access denied.

因为这是迄今为止两个教程之间的区别...我是从 USB 进行实时启动的。

我该如何加密最后一个分区以便可以继续?

或者我如何实现 Ubuntu 22 安装 + LUKS FDE + 自定义 SWAP?

答案1

您从 tecmint 获取的文章中有加密启动、Root、GRUB 和交换区域的脚本。

lvcreate -L 4G -n swap_1 ubuntu--vg

上面的命令来自本文,用于创建交换文件,当然您也可以更改大小。我使用了文章中的设置,效果非常好!我建议您完全按照脚本操作,并注意他在某些地方有针对 HDD 和 Sata 的自定义命令,下面有针对 nvme SSD 的自定义命令,因此请务必编写正确的命令

相关内容