내 노트북에는 하드 드라이브( )가 있습니다 /dev/sda
. 이 하드 드라이브에는 EFI 파티션( /dev/sda1
), 부팅 파티션( /dev/sda2
), 암호화된 파티션 /
( )이 있습니다 . /dev/sda3
암호화된 파티션 내부에는 여러 논리 볼륨( /
, 스왑 파티션 등)을 포함하는 LVM 볼륨 그룹이 있습니다.
이 모든 것이 잘 작동합니다. 내 initrd가 올바르게 설정되었으며 시스템이 문제 없이 부팅됩니다. 하지만 부팅한 후에는 볼륨 그룹을 관리할 수 있기를 원합니다. 이 작업을 시도하면 다음과 같은 결과가 나타납니다.
# pvdisplay /dev/mapper/root
--- Physical volume ---
PV Name /dev/mapper/root
VG Name localdisk
PV Size 931.31 GiB / not usable 1.69 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 238416
Free PE 0
Allocated PE 238416
PV UUID I3wArE-g6yl-9ywx-Df8d-3w1N-wuuQ-FrQjoK
# vgdisplay localdisk
Volume group "localdisk" not found
Skipping volume group localdisk
pvdisplay
물리적 장치가 볼륨 그룹의 구성원이라고 보고 localdisk
하면서 vgdisplay
볼륨 그룹이 존재하지 않는다고 주장하는 것이 어떻게 가능합니까 ? 여기서 무슨 문제가 있습니까?
필요에 따라/질문과 관련하여 내 시스템에 대한 추가 정보를 제공할 수 있습니다. 무엇이 잘못되고 있는지 확신할 수 없기 때문에 이 시점에서 무엇을 추가해야 할지 모르겠습니다.
이것은 내가 설정한 장치 매퍼 항목입니다. 두 개의 LVM 논리 볼륨과 /dev/mapper/root
LUKS로 암호화된 상위 파티션인 "루트"(즉)를 확인하세요.
# dmsetup info
Name: localdisk-swap
State: ACTIVE
Read Ahead: 256
Tables present: LIVE
Open count: 2
Event number: 0
Major, minor: 251, 1
Number of targets: 1
UUID: LVM-75jhqCBBFayCVQECgTH8NOFfkrjYCqiHa0oIafGLgBOZbuhrYISOHQo97Gamy74E
Name: localdisk-root
State: ACTIVE
Read Ahead: 256
Tables present: LIVE
Open count: 1
Event number: 0
Major, minor: 251, 2
Number of targets: 1
UUID: LVM-75jhqCBBFayCVQECgTH8NOFfkrjYCqiHzpANUdFbPYfliL6gmKoBdhol2zj9Gl6z
Name: root
State: ACTIVE
Read Ahead: 256
Tables present: LIVE
Open count: 2
Event number: 0
Major, minor: 251, 0
Number of targets: 1
UUID: CRYPT-LUKS1-d5f7cc568cc74201be3fde108e37162e-root
이것은 내가 설치한 파일 시스템입니다(참고 /dev/mapper/localdisk-root on /
).
# mount
rootfs on / type rootfs (rw)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,nosuid,relatime,size=10240k,nr_inodes=1006523,mode=755)
devpts on /dev/pts type devpts (rw,relatime,gid=5,mode=620)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
/dev/mapper/localdisk-root on / type ext4 (rw,noatime,commit=0)
tmpfs on /run type tmpfs (rw,nosuid,nodev,relatime,size=805564k,mode=755)
mqueue on /dev/mqueue type mqueue (rw,nosuid,nodev,noexec,relatime)
shm on /dev/shm type tmpfs (rw,nosuid,nodev,noexec,relatime)
configfs on /sys/kernel/config type configfs (rw,nosuid,nodev,noexec,relatime)
cgroup_root on /sys/fs/cgroup type tmpfs (rw,nosuid,nodev,noexec,relatime,size=10240k,mode=755)
fusectl on /sys/fs/fuse/connections type fusectl (rw,nosuid,nodev,noexec,relatime)
efivarfs on /sys/firmware/efi/efivars type efivarfs (rw,nosuid,nodev,noexec,relatime)
openrc on /sys/fs/cgroup/openrc type cgroup (rw,nosuid,nodev,noexec,relatime,release_agent=/lib64/rc/sh/cgroup-release-agent.sh,name=openrc)
cpu on /sys/fs/cgroup/cpu type cgroup (rw,nosuid,nodev,noexec,relatime,cpu)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,nodev,noexec,nosuid)
답변1
보시면 섹션이 /etc/lvm/lvm.conf
있습니다 devices { ... }
. 이를 /dev/mapper/root
유효한 위치로 승인하려면 필터를 조정해야 할 수도 있습니다 . 가장 간단한 필터는 모든 장치를 허용하는 것입니다 filter = [ "a/.*/" ]
. 관심 있는 장치만 수락할 수도 있습니다 filter = [ "a|^/dev/mapper/root$|", "r/.*/" ]
.
initramfs의 LVM 구성이 다를 수 있습니다.
(BTW: vgscan -vvv
여기서 사용되는 문제 해결 도구입니다. 검사한 모든 블록 장치와 거기에서 발견된 항목이 표시되어야 합니다.)