RHEL 6(커널 2.6.32)에서 RHEL 7(커널 3.10.0)로 작업 프로젝트를 마이그레이션하고 있습니다.
이 프로젝트에는 실제 하드웨어를 나타내지만 대상 하드웨어를 사용하지 않고도 테스트 및 개발이 가능한 가상 머신에서 사용할 원시 디스크 이미지 파일을 구축하는 작업이 포함됩니다.
소프트웨어가 호스트 운영 체제에서 디스크로 배포되면 원본 파일이 루프 장치에 추가되고 파티션이 생성됩니다. 그 중 일부는 raid 0 파티션입니다. 이러한 파티션은 때때로 다른 가상 머신에 연결된 디스크에 대해 동일한 레이블을 갖습니다. 예를 들어, 4개의 원시 파일이 있는데, 원시 파일 1과 2는 하나의 가상 머신에 연결되고, 3과 4는 다른 가상 머신에 연결됩니다. 그러나 파티션 레이블이 "LOG"인 두 디스크 모두에 RAID를 설정해야 합니다.
이는 RHEL 6에서는 문제가 되지 않습니다. 루프 장치를 연결할 때 를 실행해야 하며 kpartx -a /dev/loop0
, kpartx -a /dev/loop1
레이드 장치를 조립하려면 다음을 수행할 수 있습니다 mdadm --assemble /dev/md/LOG --name LOG
. kpartx를 사용하기 전에는 lsblk
루프 장치용 파티션이 표시되지 않았습니다.blkid
RHEL 7에서 동일한 작업을 수행하면 상황이 까다로워집니다. 파티션을 감지하려면 원본 파일을 루프 장치로 첨부하기만 하면 됩니다. lsblk
또는 를 사용하면 blkid
루프 장치에 대한 파티션을 볼 수 있고 소프트웨어를 로드할 때 mdadm 도구는 루프 장치 0-3에서 파티션 레이블 "LOG"를 볼 수 있으며 루프 0에 LOG 레이블이 붙은 파티션으로 인해 RAID 세트를 어셈블할 수 없습니다. 및 1은 루프 2와 3의 LOG라고 표시된 파티션과 다릅니다.
Lostup에서 매개변수 사용을 방지하는 방법을 찾지 못했습니다. 커널 매개변수나 기타 구성 파일을 통해 루프 장치의 파티션 감지를 방지하는 방법이 있습니까?