내 편에서 빠른 업데이트. 컨텍스트 : 오늘 저는 LVM 대신 물리적 파티션 구성표로 설치된 전용 서버를 온라인 상태로 만들었습니다. 3 개의 파티션이있었습니다 :
/ boot (ext4)-512M / (ext4)-730G 스왑-8G
콘솔 액세스 권한이 없기 때문에 최종 목표는 기존 루트 파티션을 LVM으로 변환하는 것입니다.
ext4를 축소 할 수 없다는 것을 고려할 때 스왑 파티션을 임시 루트로 재사용하는 것이 유일한 방법이었습니다. 또한 프로세스가 올바르게 작동 할 수 있도록 LVM을 사용하여 임시 루트를 설정하기로 결정했습니다.
먼저 스왑을 밝혀 냈습니다.
swapoff -a
그런 다음 parted를 통해 파티션의 크기를 조정했습니다 (원래는 742에서 750까지 시작되었습니다).
parted
resize 3 742 744
LVM을위한 파티션을 만들었습니다 :
mkpart primary ext2 744 750
set 4 lvm on
임시 루트에 대한 PV / VG / LV / 파일 시스템 생성 :
pvcreate /dev/sda4
vgcreate VolGroup00 /dev/sda4
lvcreate -L 5.73G -n tmproot VolGroup00
mkfs.ext4 /dev/VolGroup00/tmproot
다음 단계는 루트를 임시 장소에 복사하는 것입니다.
mount /dev/VolGroup00/tmproot /media
rsync -ravzxq / /media/
모든 것이 있으면 / media / etc / fstab의 루트 파일 시스템에 대한 항목도 변경해야했습니다.
/dev/VolGroup00/tmproot / ext4 defaults 1 1
콘솔 액세스가없는 가장 원치 않는 부분은 /boot/grub/grub.conf를 수정하는 것이 었습니다.
최초 출품작 :
title CentOS (2.6.32-279.22.1.el6.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.32-279.22.1.el6.x86_64 ro root=UUID=e769af21-d9e1-455f-a6a7-7a9c84d8cbea rd_NO_LUKS LANG=en_US.UTF-8 KEYBOARDTYPE=pc KEYTABLE=hu rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_NO_LVM rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-279.22.1.el6.x86_64.img
수정 된 항목 :
title CentOS (2.6.32-279.22.1.el6.x86_64) LVM
insmod lvm
kernel /vmlinuz-2.6.32-279.22.1.el6.x86_64 ro LANG=en_US.UTF-8 KEYBOARDTYPE=pc KEYTABLE=hu SYSFONT=latarcyrheb-sun16 crashkernel=auto dolvm root=/dev/mapper/VolGroup00-tmproot panic=10
#rd_NO_DM rd_NO_MD rd_NO_LUKS
initrd /initramfs-2.6.32-279.22.1.el6.x86_64.img
안전 측면에서 : insmod lvm이 커널에 대한 dolvm 매개 변수와 함께 추가되었으며 루트 경로도 root = / dev / mapper / VolGroup00-tmproot로 변경되었습니다. 현재 / dev / mapper / 경로를 사용하는 것이 중요합니다. 안전 보증금으로 panic = 10 매개 변수를 추가하고 헤더의 기본 부팅 항목을 변경하지 않았습니다. 그 대신 새 설정으로 한 번만 부팅하도록 grub에 알리려고 시도했지만 실패한 경우 원래 항목이 작동 할 수 있습니다.
grub
savedefault --default=1 --once
그리고 마지막으로:
reboot
처음에는 괜찮 았으므로 원래 루트 파티션 위에 새 볼륨 그룹을 작성하여 전체 절차를 반복했으며 마지막으로 LVM을 사용하여 올바른 위치에 루트를 얻었습니다.
도움이 되었기를 바랍니다.