Ced*_*tin 3 filesystems boot zfs encryption ext4
在安装期间在我的 Debian Linux 系统上,我决定使用磁盘加密(在常规 Debian 安装期间提供的加密)。当系统启动时,我需要输入密码,然后“真正的”启动开始。
有人可以解释一下这种加密是如何执行的吗?它发生在文件系统布局之前还是之后?我可以将任何可用于 Linux 的文件系统与磁盘加密一起使用吗?
将在/ etc / mtab中/比Linux的使用了什么我是比较复杂的,我把它它与磁盘加密,但我真的不知道。这是(我认为是)我的/etc/mtab 中的相关位:
/dev/sda1 /boot ext2 rw,relatime,errors=continue 0
/dev/mapper/archon-root / ext4 rw,noatime,errors=remount-ro,user_xattr,commit=300,barrier=1,data=ordered 0 0
rootfs / rootfs rw 0 0
Run Code Online (Sandbox Code Playgroud)
我真的不明白为什么 /boot 是 ext2 ,为什么 / 是 ext-4 并使用/dev/mapper。
/boot 可以使用 ext4 吗?
是否可以/正在使用 ZFS 并且仍然提供加密?
/boot
未加密(BIOS 无法解密它...)。它可能是 ext4,但实际上没有任何必要。它通常不会被写入。BIOS 从 MBR 读取 GRUB,然后 GRUB 从 /boot 读取自身的其余部分、内核和 initramfs。initramfs 会提示您输入密码。(大概,它的 usingcryptsetup
和 LUKS 标头。)。
加密在文件系统下面的一层执行。您正在使用称为 dm-crypt 的东西(这是 cryptsetup 使用的低级内核后端),其中“dm”表示“设备映射器”。您似乎也在使用 LVM,它也是由内核设备映射器层实现的。基本上,您有一个看起来像这样的存储堆栈:
1. /dev/sda2 (guessing it's 2, could be any partition other than 1)
2. /dev/mapper/sda2_crypt (dm-crypt layer; used as a PV for VG archon)
3. LVM (volume group archon)
4. /dev/mapper/archon-root (logical volume in group archon)
5. ext4
Run Code Online (Sandbox Code Playgroud)
您可以使用dmsetup
命令找到所有这些。例如,dmsetup ls
会告诉您列表中的 Device Mapper 设备。dmsetup info
将给出一些细节,并dmsetup table
给出映射层正在做的翻译的技术细节。
它的工作方式是 dm-crypt 层(上面的#2)通过执行加密来“映射”数据。因此,写入 /dev/mapper/sda2_crypt 的任何内容在传递到 /dev/sda2(实际硬盘)之前都会被加密。来自 /dev/sda2 的任何内容在从 /dev/mapper/sda2_crypt 传出之前都会被解密。
因此,任何上层都透明地使用该加密。您首先使用它的上层是 LVM。您正在使用 LVM 将磁盘分割成多个逻辑卷。你有(至少)一个,叫做 root,用于根文件系统。它是一个普通的块设备,因此您可以像使用其他任何设备一样使用它——您可以将任何您想要的文件系统放在那里,甚至是原始数据。数据被传递下来,所以它会被加密。
要了解的事情(检查联机帮助页等):
/etc/crypttab
lvs
, pvs
, lvcreate
, lvextend
)cryptsetup
归档时间: |
|
查看次数: |
551 次 |
最近记录: |