如何識別 LVM-over-LUKS 或 LUKS-over-LVM

如何識別 LVM-over-LUKS 或 LUKS-over-LVM

我最近安裝了 Fedora 20。它安裝良好,我可以登入等。

我用 LiveCD 啟動並嘗試了以下操作:(我已將 Fedora20 安裝到 /dev/sda3' 分割區)。

  1. 如果我運行,cryptsetup open /dev/sda3 fedo我會收到一條錯誤訊息,指出它不是 LUKS 設備。
  2. II 運行時cryptsetup luksDump /dev/sda3收到錯誤訊息,指出它不是 LUKS 設備
  3. 如果我運行cryptsetup open --type plain /dev/sda3 fedo,它會提示輸入密碼並正常打開設備。

所以,顯然,這是一個純文字加密(沒有 LUKS 標頭)分割區。

現在,當我嘗試跑步時mount /dev/mapper/fedo /mnt/fedora,它說unknown crypto_LUKS filesystem

我確實在其上安裝了 LVM,因此,我可以運行pvdisplay, vgdisplaylvdisplay它會顯示資訊。我有一個名為 VGfedora和兩個 LV,即 00 用於交換分區,01 用於 / 分區。

現在,如果我執行 a,cryptsetup luksDump /dev/fedora/01我可以看到 LUKS 標頭等mount /dev/fedora/00 /mnt/fedora

那麼,我是否有 LUKS-over-LVM-over-(純文字)加密分割區?

這是我的輸出lsblk

# lsblk
名稱 主要:最小 RM 尺寸 RO 類型 安裝點
sda 8:0 0 37.3G 0盤
|-sda3 8:3 0 17.4G 0 部分
  |-fedora-00 253:0 0 2.5G 0 lvm
  | |-luks-XXXXX 253:3 0 2.5G 0 地穴 [交換]
  |-fedora-01 253:1 0 15G 0 lvm
    |-luks-XXXXX 253:2 0 15G 0 地穴 /

所以,問題是,如何判斷我是否有LVM 優於 LUKS或者LVM 上的 LUKS,或它們的一些其他組合(LUKS 優於 LVM 優於 LUKSETC)?為了明確我的問題,我知道我有 LVM 和 LUKS,我想弄清楚它們的順序。

答案1

cryptsetup luksDump /dev/fedora/01顯示LVM邏輯磁碟區是LUKS加密磁碟區。pvs或的輸出pvdisplay將顯示該分割區/dev/sda3是一個實體磁碟區。因此,你對 LVM 更滿意。在較低級別,您有基於 PC 分割區的 LVM。

的輸出lsblk證實了這一點:sda是一個磁碟,sda3是一個分割區(包含 LVM 物理磁碟區),fedora-00fedora-01邏輯卷,每個邏輯磁碟區包含一個 LUKS 加密磁碟區。

答案2

在一個普通的地窖裡有一個 LUKS 是很奇怪的。為什麼要加密兩次?

一旦你的檔案系統被掛載,lsblk會告訴你什麼是什麼。

NAME                         MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
sda                            8:0    0  59.6G  0 disk  
└─sda1                         8:1    0  59.6G  0 part  
  └─md0                        9:0    0  59.6G  0 raid1 
    └─luksSSD1               253:9    0  59.6G  0 crypt 
      ├─SSD-home             253:0    0    36G  0 lvm   /home
      └─SSD-root             253:10   0    16G  0 lvm   /

這是磁碟 sda 上常規分割區 (sda1) 上 RAID1(md0,類型 raid1)上 LUKS(類型 crypt、luksSSD1)上的 LVM(/home 和 / 類型為 lvm)。

答案3

你可以這樣看看你有什麼:

$ sudo blkid | grep crypto_LUKS
/dev/mapper/fedora-home: UUID="XXXXXXXXXXXXXXXXX" TYPE="crypto_LUKS" 

這是一個帶有加密 LUKS 的 LVM 邏輯磁碟區。當我安裝該磁碟區時,它在 Fedora 20 下的安裝方式如下:

$ mount | grep home
/dev/mapper/luks-XXXXX on /home type ext4 (rw,relatime,seclabel,data=ordered)

如果您進行了標準安裝,您將得到相同的結果。

手動解密

我相信如果您想手動執行操作,您可以執行以下操作。首先看看某件事是否幸運:

$ sudo cryptsetup isLuks /dev/mapper/fedora-home
$ echo $?
0

$ sudo cryptsetup isLuks /dev/mapper/fedora-root 
$ echo $?
1

筆記:0 表示它是 LUKS,1 表示它不是。

那麼接下來要解密它:

$ sudo cryptsetup luksOpen /dev/mapper/fedora-home crypthome

筆記:您必須輸入密碼才能解密分割區。請隨意將映射名稱更改crypthome為您想要的任何名稱。映射的分割區現在可用,/dev/mapper/crypthome但尚未安裝。最後一步是建立掛載點並掛載映射分割區:

手動安裝

$ sudo -Es
$ mkdir /mnt/crypthome && mount /dev/mapper/crypthome /mnt/crypthome

我有哪些加密分割區?

您可以檢查該檔案/etc/crypttab以查看您還設定了哪些 LUKS。

$ more /etc/crypttab  
luks-XXXXXXXX UUID=XXXXXXXX none 

轉儲設備

您也可以luksDump這樣使用:

$ sudo cryptsetup luksDump /dev/mapper/fedora-home
LUKS header information for /dev/mapper/fedora-home

Version:        1
Cipher name:    aes
Cipher mode:    xts-plain64
Hash spec:      sha1
Payload offset: 4096
MK bits:        512
MK digest:      XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX 
MK salt:        XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX 
                XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX 
MK iterations:  50625
UUID:           XXXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXX

Key Slot 0: ENABLED
    Iterations:             202852
    Salt:                   XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX 
                            XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX 
    Key material offset:    8
    AF stripes:             4000
Key Slot 1: DISABLED
Key Slot 2: DISABLED
Key Slot 3: DISABLED
Key Slot 4: DISABLED
Key Slot 5: DISABLED
Key Slot 6: DISABLED
Key Slot 7: DISABLED

如果它不是 LUKS 設備,那麼它會得到如下報告:

$ sudo cryptsetup luksDump /dev/mapper/fedora-root 
Device /dev/mapper/fedora-root is not a valid LUKS device.

參考

答案4

我認為判斷它是LVM-over-LUKS還是相反的關鍵是順序地穴左心室厚度命令輸出中的類型lsblk。基於這個推理,我得出的結論是我的設定是LVM 上的 LUKS。對於lsblkLVM-over-LUKS 類型設定的輸出,請查看下面 @frostschultz 顯示的輸出。

就我而言,由於 /dev/sda3 是一個“Linux LVM”系統分區(分區 ID 8e),我認為cryptsetup open --type plain /dev/sda3 SomeName我不應該首先嘗試,而是應該通過運行命令cryptsetup open /dev/disk/by-uuid/UUID-of-LV SomeName命令直接打開 LV 來直接映射 LVM。我嘗試了這個,它按我的預期工作。

感謝所有幫助我理解這一點的人。

相關內容