我在 LVM 上安装了 Fedora,并对我的 /home 和其中的其他文件系统进行了加密。(我记得密码,但忘记了使用的密码协议)
现在,我安装了 Ubuntu,没有重新格式化 /home 和 /resto,以为我能够访问它们。但是,现在这些分区和其中的所有数据都无法访问。
我尝试了不同的方法,如下所示。
root@ubuntu:~# fdisk -l
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x1549f232
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 206847 102400 7 HPFS/NTFS/exFAT
/dev/sda2 206848 268005375 133899264 7 HPFS/NTFS/exFAT
/dev/sda3 269033470 1929263103 830114817 5 Extended
/dev/sda4 1929263104 1953521663 12129280 82 Linux swap / Solaris
/dev/sda5 269033472 1929263103 830114816 8e Linux LVM
/dev/sda5 - LVM 安装没有问题,因为我的根分区在那里。其中有 5 个文件系统,我可以轻松安装 3 个,因为它们没有加密。
root@ubuntu:~# mount
/dev/sda1 on /media/ubuntu/SYSTEM type fuseblk (rw...)
/dev/mapper/vg_shakti-lv_root on /mnt type ext4 (rw)
root@ubuntu:~# lvscan
ACTIVE '/dev/vg_shakti/lv_data' [300.00 GiB] inherit
ACTIVE '/dev/vg_shakti/lv_root' [50.00 GiB] inherit
ACTIVE '/dev/vg_shakti/lv_softs' [84.22 GiB] inherit
ACTIVE '/dev/vg_shakti/lv_resto' [97.66 GiB] inherit
ACTIVE '/dev/vg_shakti/lv_home' [259.78 GiB] inherit
其中,文件系统 resto 和 home 已加密且无法访问。其他的我可以直接挂载并使用!
root@ubuntu:~# ls -al /dev/mapper/
total 0
drwxr-xr-x 2 root root 160 Jun 25 2014 .
drwxr-xr-x 16 root root 4520 Jun 25 09:54 ..
crw------- 1 root root 10, 236 Jun 25 2014 control
lrwxrwxrwx 1 root root 7 Jun 25 2014 vg_shakti-lv_data -> ../dm-0
lrwxrwxrwx 1 root root 7 Jun 25 2014 vg_shakti-lv_home -> ../dm-4
lrwxrwxrwx 1 root root 7 Jun 25 09:42 vg_shakti-lv_resto -> ../dm-3
lrwxrwxrwx 1 root root 7 Jun 25 2014 vg_shakti-lv_root -> ../dm-1
lrwxrwxrwx 1 root root 7 Jun 25 2014 vg_shakti-lv_softs -> ../dm-2
root@ubuntu:~# blkid
/dev/loop0: TYPE="squashfs"
/dev/sda1: LABEL="SYSTEM" UUID="E29C40B19C4081D1" TYPE="ntfs"
/dev/sda2: LABEL="HP" UUID="FA047C07047BC563" TYPE="ntfs"
/dev/sda4: UUID="0d60e335-934b-4abd-a82c-1b5dcd46a5b6" TYPE="swap"
/dev/sda5: UUID="fotWMV-2dRn-rwFI-BiyC-rbE9-3VX1-0i429A" TYPE="LVM2_member"
/dev/sr0: LABEL="Ubuntu 14.04 LTS amd64" TYPE="iso9660"
/dev/mapper/vg_shakti-lv_data: UUID="9d5e8ed9-c709-48df-a019-b27db1b0aa12" TYPE="ext4"
/dev/mapper/vg_shakti-lv_root: UUID="74b95b0d-d2b5-4e5e-b33b-ebc77375180c" TYPE="ext4"
/dev/mapper/vg_shakti-lv_softs: UUID="56e531f4-3521-4970-af73-e8ef03367c42" TYPE="ext4"
不知道为什么其他 2 个文件系统不能被识别为块设备。
现在,我尝试使用 cryptsetup 访问加密文件
root@ubuntu:~# modprobe dm-crypt
root@ubuntu:~# modprobe dm-mod
root@ubuntu:~# cryptsetup luksDump /dev/sda5
Device /dev/sda5 is not a valid LUKS device.
root@ubuntu:~# cryptsetup luksDump /dev/dm-4
Device /dev/dm-4 is not a valid LUKS device.
或者
root@ubuntu:~# cryptsetup luksDump /dev/mapper/vg_shakti-lv_home
Device /dev/mapper/vg_shakti-lv_home is not a valid LUKS device.
很奇怪,因为它肯定是加密的,而且我每次启动时都会输入密码!所以,它甚至没有被识别为 LUKS 设备。如何告诉内核这些是加密文件系统?
现在,我该如何设置才能访问我的加密分区?我需要单独定义一些分区表吗?
There is no /etc/crypttab as of now.
请告诉我正确完成此设置的命令(用于测试和识别加密文件系统的命令)
(注意:这些是运行 14.04 LTS 的 liveCD 时的输出)
答案1
sudo cryptsetup luksOpen /dev/by-uuid/$(各自 LV 隐秘的 uuid) foo then; sudo mount /dev/mapper/foo-bar /$mntpt
然后使用 cryptsetup-rencrypt (默认情况下未安装)来修复或调整 crypt,这假设你知道所有密码或密钥文件,不需要旧密码,只需要新密码