fakeraid + UEFI + GPT - dmraid를 사용하여 데비안을 설치한 후 grub이 RAID 볼륨을 감지하지 못합니다

fakeraid + UEFI + GPT - dmraid를 사용하여 데비안을 설치한 후 grub이 RAID 볼륨을 감지하지 못합니다

에 관한 게시물이 있습니다.데비안 포럼마찬가지지만 여기보다 교통량이 적은 것 같아서 여기서도 운을 시험해볼까 생각했습니다.

UEFI와 GPT를 사용하여 fakeraid에 Windows 10과 데비안, 그리고 더 많은 배포판을 설치하려고 합니다. 그래서 나는 따라간다이 가이드dmraid를 사용하면 성공적으로 파티션을 나누고 설치할 수 있습니다. 파티션은 다음과 같습니다.

/dev/mapper/isw_dagfijbabd_RAID0SYS
|- Microsoft Recovery
|- EFI / boot
|- Microsoft MRS
|- Windows
|- swap
|- LVM PV
 \
  |-- VG0
   \
    |--- LV OS_2
    |--- LV debian
    |--- LV home

문제는 커널 루트를 설정할 때 grub이 RAID를 보지 못하는 것 같다는 것입니다. 이 오류가 발생합니다.

modprobe: module dm-raid45 not found in module.dep
Gave up waiting for root device. Common problems:
 - Boot args (cat /proc/cmdline)
    - Check rootdelay= (did the system wait long enough?)
    - Check root= (did the system wait for the right device?)
 - Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/mapper/VG0-debian does not exist.
modprobe: module ehci-orion not found in modules.dep

우분투 라이브 chroot를 사용하여 데비안 복구 모드 대신 시스템에 들어가서 실제로 grub을 루트로 설정하는 것을 제외하고 설치 단계를 완료할 수 있습니다.

내가 알 수 있는 바에 따르면 이는 grub이 mdadm을 올바르게 사용하지 않거나 mdadm을 전혀 사용하지 않는 문제인 것 같습니다. 그래서 어떻게든 mdadm을 포함하도록 initramfs를 편집해야 합니다. 그렇죠? 그런데 이것이 어떻게 작동하나요? ducea.com의 가이드를 사용하여 initramfs를 성공적으로 설치했습니다. 그런데 어떻게 진행해야 하나요?

# All work is done in a temporary directory
mkdir /tmp/initrdmount
# Copy the image, uncompress it
cp /boot/initrd.img-2.6.15-1-686-smp /tmp/initrd.img.gz
gunzip -v /tmp/initrd.img.gz
# Extract the content of the cpio archive
cd /tmp/initrdmount
cpio -i < /tmp/initrd.img

편집: initramfs 셸에서 수집된 일부 정보도 추가하겠습니다.

# this depends ofc on whether I use dmraid or mdadm for kernel boot
(initramfs) cat /proc/cmdline
    BOOT_IMAGE=/boot/vmlinuz-3.16.0.4-amd64 root=/dev/mapper/VG0-debian ro {dmraid/mdadm}=true  
(initramfs) cat /proc/mdstat # returns nothing
(initramfs) cat /etc/mdadm/mdadm.conf
    ARRAY metadata=imsm UUID=xxxx:xxxx:xxxx:xxxx
    ARRAY /dev/md/isw_dagfijbabd_RAID0SYS container=xxxxxxxxxxxxxxxx member=0 UUID=xxxxxx:xxxxxx:xxxxxx:xxxxxx
    ARRAY /dev/md/isw_dagfijbabd_RAID0RST container=xxxxxxxxxxxxxxxx member=1 UUID=xxxxxx:xxxxxx:xxxxxx:xxxxxx
(initramfs) ls /dev/mapper/
    control isw_dagfijbabd_RAID0RST isw_dagfijbabd_RAID0SYS
(initramfs) lvm pvs    # returns nothing

이 출력은 실제로 커널 부팅 라인에서 dmraid를 사용하든 mdadm을 사용하든 동일합니다. 어느 쪽이든 /sbin에서 mdadm을 찾을 수 있다는 것을 깨달았고 RAID0 디스크 isw_dagfijbabd_RAID0SYS/dm-0은 감지되었지만 그 내용은 감지되지 않았습니다.

dmraid와 mdadm에 간섭이 있는지 궁금합니다. initramfs에서 dmraid를 제거해야 합니까?

답변1

마침내 fakeraid(sataraid)와 RAID0을 사용하지 않고 이 작업을 수행할 수 있는 방법을 찾았습니다. 대신 BIOS RAID를 비활성화하고 AHCI로 설정했습니다.

그런 다음 Ubuntu 라이브를 사용하여 드라이브를 지우고 Windows용 빈 파티션을 만든 다음 첫 번째 디스크에 스왑용 파티션을 만들었습니다. 나는 gparted를 사용하여 이를 수행합니다. 왜냐하면 항상 Windows GPT 테이블에 대해 불평하기 때문입니다. 그런 다음 평소대로 Windows를 설치했습니다.

그런 다음 Linux 설치 프로그램에서 LVM 파티셔닝을 사용하여 두 개의 물리적 볼륨(PV)을 생성했습니다. 하나는 Windows를 배치한 드라이브의 나머지 공간에 있고 다른 하나는 두 번째 드라이브의 전체 공간을 차지했습니다. 그런 다음 이 두 개의 물리적 볼륨을 포함하는 VG(볼륨 그룹)를 만들었습니다. 그런 다음 LV를 사용하여 원하는 파티션을 만들 수 있습니다.

나는 이걸했다

              HDD 1                             HDD 2
================================   ===============================
||  Windows   | Swap |  PV 1  ||   ||            PV 2           ||
|| (boot/EFI) |      |        ||   ||                           ||
================================   ===============================
                          |                      |
                          V                      V
                ------------------------------------------------
               |                 Volume Group 0                 |
                ------------------------------------------------
                    |          |             |              |
                    V          V             V              V
                --------   --------   ---------------   --------
               |   Lv1  | |   Lv2  | |       LV3     | |        |
               | Fedora | | Debian | |      Home     | | Unused |
               |  20 GB | |  20 GB | |     ~100 GB   | |        |
                --------   --------   ---------------   -------- 

저는 이 분야의 전문가가 아니며 이것이 RADI0의 성능에 어떤 영향을 미칠지 전혀 모릅니다. 하지만 기능은 동일하며 창을 전혀 방해하지 않습니다. LVM 파티션은 기본적으로 Fedora, Debian 및 Ubuntu 설치 프로그램에 의해 감지되며 GRUB는 기본적으로 작동합니다.

이것이 상식인지는 모르겠지만, 파티에 늦었을 뿐입니다(하지만 아직 두 포럼 모두에서 단 한 번의 댓글에도 응답하지 않았으므로 그다지 명확하지 않을 수도 있습니다). 아무튼 저와 같은 어려움을 겪는 분들과 공유하고 싶었습니다. 가짜 듀얼 부팅을 알아내기 위해 수많은 시간을 소비하는 대신 이 설정을 적극 권장합니다.

관련 정보