문제:
Ubuntu 16.04(서버) 상자를 부팅할 때. Busybox V1.22.1(initramfs) 프롬프트가 나타납니다. "mdadm: 발견된 conf 파일에 중복된 MD 장치 이름이 있습니다."라는 메시지가 나타납니다.
알아두면 좋은 세부정보:
- 레이드 어레이를 변경하는 동안 모든 데이터를 다른 장치에 저장했기 때문에 데이터 손실에 대해 걱정하지 않습니다.
- 이 문제는 레이드를 변경할 때 발생했습니다. sdc, sdd 및 sde에 있는 기본 md raid 5 어레이를 제거했습니다.
- 내 서버는 md1로 부팅되고 md0은 내 스왑 파일이며 둘 다 sda 및 sdb의 스팬 장치입니다.
- 스팬 드라이브에서 /home 디렉토리를 이동하려고 했습니다. 여기서 나의 궁극적인 목표는 /, /home을 이동하고 sdd 드라이브로 교체하는 것입니다.
- Ubuntu를 다시 설치하려고 시도했지만 벽에 부딪혔습니다(Gigabyte 970A-DS3P FX 마더보드와 관련이 있는 것 같습니다. 기본적으로 Ubuntu 라이브 USB로 부팅할 수 없습니다).
- 내 서버에는 CD/DVD/Blue-Ray 드라이브가 없으므로 USB 드라이브를 사용합니다.
에러 메시지:
...
Begin: Running /scripts/local-block ... mdadm: Devices UUID-7c2dfe28-c4b7-8646-c114-3a6e9b415836 and UUID--7c2dfe28-c4b7-8646-c114-3a6e9b415836 have the same name: /dev/md/0
mdadm: Duplicate MD device names in conf file were found.
done.
done.
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! UUID=b5705e19-a3a3-4c70-9a1b-a86221e389ba
임시 해결책:
내 mdadm.conf 파일에 추가 줄이 있는 것을 발견했습니다.
# definitions of existing MD arrays
ARRAY /dev/md/0 metadata=1.2 UUID=7c2dfe28:c4b78646:c1143a6e:9b415836 name=bane:0
ARRAY /dev/md/1 metadata=1.2 UUID=5bb24cc9:32f1540c:91119814:4b2597de name=bane:1
ARRAY /dev/md/2 metadata=1.2 UUID=3f089bd1:89b220f0:44a12b9a:6aa183a5 name=bane:2
# This file was auto-generated on Sun, 11 Feb 2018 23:08:06 -0500
# by mkconf $Id$
ARRAY /dev/md/2 metadata=1.2 name=bane:2 UUID=3f089bd1:89b220f0:44a12b9a:6aa183a5
ARRAY /dev/md/0 metadata=1.2 name=bane:0 UUID=7c2dfe28:c4b78646:c1143a6e:9b415836
ARRAY /dev/md/1 metadata=1.2 name=bane:1 UUID=5bb24cc9:32f1540c:91119814:4b2597de
ARRAY /dev/md3 metadata=1.2 name=bane:3 UUID=b8b0bdd6:be5fa734:8bc27641:57722ae3
다음 명령을 실행하면 이 문제를 해결할 수 있다는 것을 알았습니다.
head -23 mdadm.conf > c.c
mv c.c mdadm.conf
mdadm -q --assemble --scan --run
exit
이런 시스템이 나오네요.
작동하지 않는 것으로 보이는 추가 단계:
- BusyBox를 사용할 때와 마찬가지로 /etc/mdadm/mdadm.conf 파일을 복사하고 추가 줄을 제거했습니다.
- 재부팅됨
- 서버는 동일한 메시지와 함께 Busybox로 다시 부팅됩니다.
- 위에 설명된 대로 임시 솔루션을 구현하고 mdadm.conf를 확인하면 문제가 되는 중복 줄이 없습니다.
내가 여기서 무엇을 놓치고 있는 걸까요? Ubuntu는 부팅할 때 다른 곳에서 mdadm.conf 정보를 가져오나요?
감사합니다
답변1
나는 이것에 대해 내가 찾고 있던 대답을 찾았습니다.
update-initramfs -u -v
재부팅했더니 Busybox/intramfs로 이동하지 않고 서버가 다시 작동했습니다.
답변2
mdadm.conf에 이름이 중복되어 비슷한 문제가 있습니다.
다음 방법으로 문제를 해결했습니다. 파일을 다시 작성합니다. [initramfs]mdadm --examine --scan > /etc/mdadm/mdadm.conf RAID를 조립합니다. [initramfs]mdadm -q --assemble --scan --run
[initramfs]종료
자동으로 재부팅
처음부터 시스템에서
다음 재부팅을 위한 수정 사항: #update-initramfs -u