Filesystems

加密磁碟文件系統兼容性

  • March 29, 2013

在安裝過程中,在我的 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

我真的不明白為什麼 /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

您可以使用命令找到所有這些dmsetup。例如,dmsetup ls將告訴您列表中的設備映射器設備。dmsetup info將提供一些細節,dmsetup table並將提供映射層正在進行的翻譯的技術細節。

它的工作方式是 dm-crypt 層(上面的#2)通過執行加密來“映射”數據。因此,寫入 /dev/mapper/sda2_crypt 的任何內容在傳遞到 /dev/sda2(實際硬碟)之前都會被加密。來自 /dev/sda2 的任何內容在傳出 /dev/mapper/sda2_crypt 之前都會被解密。

因此,任何上層都透明地使用該加密。您首先使用它的上層是 LVM。您正在使用 LVM 將磁碟劃分為多個邏輯卷。你有(至少)一個,叫做 root,用於根文件系統。它是一個普通的塊設備,因此您可以像使用其他任何設備一樣使用它——您可以將任何您想要的文件系統放在那裡,甚至可以放置原始數據。數據被傳遞下來,因此將被加密。

要了解的內容(檢查手冊頁等):

  • /etc/crypttab
  • LVM(一些重要的命令:lvs, pvs, lvcreate, lvextend
  • cryptsetup

引用自:https://unix.stackexchange.com/questions/70529