Ubuntu安装盘有一个选项可以使用LUKS对Ubuntu进行加密安装。然而,对于双启动的情况,没有选择在现有分区旁边执行加密安装的选项。
我该如何使用Live Disk将Ubuntu加密安装到另一个分区上?
我该如何使用Live Disk将Ubuntu加密安装到另一个分区上?
(initramfs)
),而不要求输入luks密码。 - Aleksandr Dubinskysudo dd if=/dev/zero of=/dev/mapper/cryptcherries bs=16M
。 - Tomsda5_crypt UUID=188438da-81b1-1008-a1f1-d103431fbe13 none luks,discard
- unhammerswapon -s
命令时,似乎它没有绑定到交换分区上。在终端中尝试执行以下命令:'lvdisplay|awk '/LV Name/{n=$3} /Block device/{d=$3; sub(".*:","dm-",d); print d,n;}',以查看LVM逻辑“设备”。不确定,但可能在Ubuntu 13.04(本教程已经测试过)中实现方式有所不同。 - pdvriesdiscard
选项,以允许SSD上的TRIM请求,这样使用过程中性能不会下降。谢谢! - Asfand Qazi/etc/initramfs-tools/conf.d/cryptroot
文件和/etc/default/grub
中的GRUB_CMDLINE_LINUX
行。 - gene_woodupdate-initramfs
之前,我不得不编辑/etc/modules
并添加一个dm-crypt
行),而crypttab行是错误的(update-initramfs抱怨cryptsetup: WARNING: invalid line in /etc/crypttab for cryptcherries -
)。正确的语法应该是vgcherries UUID=... none luks,tries=1
。 - Tgrcryptcherries
而不是 vgcherries
),从那以后一切正常运作。所以可能忽略我上面的评论。 - Tgrpv
行中的下划线是做什么用的吗?这个"$1"
是指什么? - PlasmaBinturongman sh
中看到这是一个“命令文件”参数用于sh
,在这里被忽略了。 - PlasmaBinturong/target
下面,这样做有什么区别呢?另外,在Ubiquity崩溃后,我发现/target
目录正在使用中,但无法卸载它。直接使用/target
而不是/mnt
是一个好主意吗? - PlasmaBinturongtries
而不是retry
。此外,lvm
选项似乎无效(在update-initramfs
和启动过程中都会发出警告)。然而,这似乎并不影响系统的功能。感谢提供的指南! - intuited最后 - 引导进入19.04安装程序USB
在默认的安装Ubuntu选项上按下Enter。
当您到达显示擦除整个磁盘并带有一些复选框的屏幕时,请点击其他选项(手动分区)选项。否则,您将丢失Windows数据!
一旦磁盘分区管理器加载您的磁盘,您将看到一个大的未分配空间。点击它并点击添加按钮创建分区。
首先,创建一个500MB的/boot分区(主分区,ext4格式)。/dev/mapper/sdaX_crypt
在列表顶部。这个指南提供了屏幕截图和可视化的分区格式设置,可能会有帮助:https://www.hecticgeek.com/2012/10/how-to-setup-encrypted-ubuntu-installation/ - firepol从现在开始,我按照这个教程进行操作:
sudo su -
2. fdisk /dev/sda
,然后创建以下分区
3. cryptsetup luksFormat /dev/sda5
4. cryptsetup luksOpen /dev/sda5 sda5_crypt
5. pvcreate /dev/mapper/sda5_crypt
6. vgcreate vgubuntu /dev/mapper/sda5_crypt
7. lvcreate -L10G -n ubuntu_root vgubuntu
lvcreate -l 100%FREE -n ubuntu_root vgubuntu
(可选,代替运行lvcreate -L10G -n ubuntu_root vgubuntu
,您可以运行此lvcreate -l 100%FREE -n ubuntu_root vgubuntu
来使用整个磁盘的剩余空间,而不仅仅是10GB)/dev/sda1
挂载为 /boot
分区,格式为 ext2
/dev/mapper/vgubuntu-ubuntu_root
挂载为 /
,格式为 ext4
/dev/sda
作为引导加载程序安装位置立即安装
10. 不要重新启动,点击继续使用Linux,并选择打开终端
11. mkdir /mnt/newroot
12. mount /dev/mapper/vgubuntu-ubuntu_root /mnt/newroot
13. mount -o bind /proc /mnt/newroot/proc
14. mount -o bind /dev /mnt/newroot/dev
15. mount -o bind /dev/pts /mnt/newroot/dev/pts
16. mount -o bind /sys /mnt/newroot/sys
17. cd /mnt/newroot
18. chroot /mnt/newroot
19. mount /dev/sda1 /boot
20. blkid /dev/sda5
(复制UUID(不带引号)并在下一步中使用)
21. echo sda5_crypt UUID=5f22073b-b4ab-4a95-85bb-130c9d3b24e4 none luks > /etc/crypttab
22. 创建文件/etc/grub.d/40_custom
23. 编辑/etc/default/grub
并设置
GRUB_TIMEOUT_STYLE=menu
对于其余的Linux安装,重新启动您的Ubuntu机器,使用Mint 19.1(Live CD)安装程序引导,并打开一个终端窗口
sudo su -
cryptsetup luksFormat /dev/sda6
cryptsetup luksOpen /dev/sda6 sda6_crypt
pvcreate /dev/mapper/sda6_crypt
vgcreate vgmint /dev/mapper/sda6_crypt
lvcreate -L10G -n mint_root vgmint
Install Now
mkdir /mnt/newroot
mount /dev/mapper/vgmint-mint_root /mnt/newroot
mount -o bind /proc /mnt/newroot/proc
mount -o bind /dev /mnt/newroot/dev
mount -o bind /dev/pts /mnt/newroot/dev/pts
mount -o bind /sys /mnt/newroot/sys
cd /mnt/newroot
chroot /mnt/newroot
mount /dev/sda2 /boot
blkid /dev/sda6
(复制不带引号的 UUID,并在下一步中使用)echo sda6_crypt UUID=5f22073b-b4ab-4a95-85bb-130c9d3b24e4 none luks > /etc/crypttab
update-initramfs -u
update-grub
/boot
。虽然加密/boot
也有合理的理由,但当你使用LUKS进行图形化安装时,图形化安装程序并不会对其进行加密。因此,我遵循这个先例,并保持未加密/boot
分区的简单性。
在本指南中,我将提到/dev/sda
。你的可能不同 - 特别是它可能是/dev/nvme0n1
。只需根据需要进行相应的替换,同时注意/dev/sda1
对应于/dev/nvme0n1p1
。1
分区可以使用GParted、sgdisk或gdisk完成。在这里,我们以sgdisk为例进行命令参考。
# sgdisk --zap-all /dev/sda
# sgdisk --new=1:0:+550M /dev/sda
# sgdisk --change-name=1:EFI /dev/sda
# sgdisk --typecode=1:ef00 /dev/sda
# mkfs.fat -F 32 /dev/sda1
# sgdisk --new=5:0:+768M /dev/sda
# sgdisk --new=6:0:0 /dev/sda
# sgdisk --change-name=5:/boot --change-name=6:rootfs /dev/sda
# sgdisk --typecode=5:8301 --typecode=6:8301 /dev/sda
# mkfs.ext4 -L boot /dev/sda5
# cryptsetup luksFormat --type=luks1 /dev/sda6
# cryptsetup open /dev/sda6 sda6_crypt
# pvcreate /dev/mapper/sda6_crypt
# vgcreate ubuntu-vg /dev/mapper/sda6_crypt
# lvcreate -L 8G -n swap_1 ubuntu-vg
# lvcreate -l 100%FREE -n root ubuntu-vg
/dev/sda5
作为/boot
的ext4
/dev/mapper/ubuntu--vg-root
作为/
的ext4
/dev/mapper/ubuntu--vg-swap_1
作为swap
/dev/sda
/etc/crypttab
(作为root用户)。这是将在启动时触发您的密码提示的内容。将文件中的UUID替换为从sudo blkid /dev/sda6
获取的驱动器UUID。
# mount /dev/mapper/ubuntu--vg-root /target
# mount /dev/sda5 /target/boot
# for n in proc sys dev etc/resolv.conf; do mount --rbind /$n /target/$n; done
# chroot /target
# mount -a
# echo 'sda6_crypt UUID=abcdefgh-1234-5678-9012-abcdefghijklm none luks,tries=0,discard,loud' > /etc/crypttab
# update-initramfs -k all -c
。我必须在文件中插入
for n in proc sys dev etc/resolv.conf; do...并使用
chmod +x运行它(从终端运行时出现了错误:bash: syntax error near unexpected token 'do')。你还忘记提到(在你的博客上写了)需要使用
sudo blkid /dev/sda6` 来获取sda6的UUID。 - dotnetCarpenter