0. MegaCli 설치 - Rocky Linux 버전 별 이슈
Rocky Linux 10
MegaCli 자체는 설치됐지만, 실행에 필요한 구버전 라이브러리 libncurses.so.5가 Rocky Linux 10에 없어서 실행이 안 되는 상태입니다.
Rocky Linux 9
Rocky 9에서는 ncurses-compat-libs가 x86_64 패키지로 제공되므로 현재 Rocky 10에서 발생한 libncurses.so.5 오류를 해결하기에 적합합니다

MegaCli 설치 및 RAID 관리 - Rocky Linux 9 기준
MegaCli는 LSI/Broadcom MegaRAID Controller를 CLI 환경에서 관리하기 위한 도구입니다. 물리 디스크 상태, 논리 디스크 상태, RAID 구성 정보, Rebuild 상태 등을 확인할 수 있습니다.
Rocky Linux 9에서는 MegaCli 8.07.14 실행에 필요한 libncurses.so.5 호환 라이브러리인 ncurses-compat-libs를 함께 설치합니다.
1. MegaCli 설치
필요한 패키지와 ncurses-compat-libs를 설치한 후 MegaCli RPM 패키지를 설치합니다.
dnf install -y wget unzip dnf-plugins-core
dnf --enablerepo=devel install -y ncurses-compat-libs
cd /usr/local/src
wget http://mirror.nforce.com/pub/software/raidtools/Megaraid/8-07-14_MegaCLI.zip
unzip 8-07-14_MegaCLI.zip
cd Linux
dnf install -y ./MegaCli-8.07.14-1.noarch.rpm
find / -name MegaCli64 2>/dev/null
ln -sf /opt/MegaRAID/MegaCli/MegaCli64 /usr/local/bin/MegaCli
ldconfig
MegaCli -h
- ncurses-compat-libs : MegaCli가 요구하는 구버전 ncurses 호환 라이브러리 설치
- find : 실제 MegaCli64 설치 경로 확인
- ln -sf : 어느 경로에서든 MegaCli 명령어를 실행할 수 있도록 심볼릭 링크 생성
- MegaCli -h : MegaCli 버전 및 명령어 확인
- MegaCli -v : MegaCli 버전 확인

2. MegaCli RAID 상태 확인
물리 디스크, Virtual Drive 및 전체 RAID 구성을 확인합니다.
MegaCli -PDList -aALL
MegaCli -LDInfo -Lall -aALL
MegaCli -ShowSummary -aALL
- PDList : 모든 물리 디스크의 상태 정보, Enclosure ID, Slot Number 확인


- LDInfo : 논리 디스크의 RAID Level 및 상태 확인

- ShowSummary : RAID Controller 전체 구성 요약 확인[RAID 정보 요약 - 레이드가 어떻게 묶여 있는지 확인 가능]

3. 물리 디스크 ID 확인
RAID 구성 전 반드시 사용할 디스크의 Enclosure Device ID와 Slot Number를 확인합니다.
MegaCli -PDList -aALL

MegaCli에서는 물리 디스크를 다음과 같이 지정합니다.
[Enclosure ID:Slot Number]
예를 들어 다음과 같습니다.
[252:0] = Enclosure ID 252 / Slot 0
이후 예제의 252 값은 실제 서버에서 확인한 Enclosure ID에 맞게 변경해야 합니다.
4. RAID 해제 후 디스크 초기화 및 RAID 0 재구성
현재 환경 기준:
- Adapter: 0
- Enclosure Device ID: 252
- 대상 디스크: Slot 0, 1, 2, 3
- 각 디스크 용량: 약 1.819 TB
기존 RAID를 삭제하고 재구성하면 기존 데이터는 삭제됩니다.
4-1. 기존 RAID 구성 확인
MegaCli -LDInfo -Lall -a0
MegaCli -CfgDsply -a0
MegaCli -PDList -a0
- LDInfo : 현재 Virtual Drive와 RAID Level 확인
- CfgDsply : RAID 구성 상세 확인
- PDList : 물리 디스크 및 Slot 상태 확인
4-2. 대상 디스크 Offline 처리 및 확인
Slot 0~3 디스크를 Offline 상태로 변경합니다.
MegaCli -PDOffline -PhysDrv [252:0] -a0
MegaCli -PDOffline -PhysDrv [252:1] -a0
MegaCli -PDOffline -PhysDrv [252:2] -a0
MegaCli -PDOffline -PhysDrv [252:3] -a0
MegaCli -PDList -a0
아래 명령어로 Offline 확인합니다.
MegaCli -PDList -a0 | grep -E "Slot Number|Firmware state"
MegaCli -LDInfo -Lall -a0
정상적으로 Offline 처리됐다면 Slot 0~3이 다음처럼 표시됩니다.
Slot Number: 0
Firmware state: Offline
Slot Number: 1
Firmware state: Offline
Slot Number: 2
Firmware state: Offline
Slot Number: 3
Firmware state: Offline

4-3. 기존 RAID 삭제
현재 8-Disk RAID 5 구성이기 때문에 -CfgLdDel -L0 -a0 명령어를 사용해서 Adapter 0의 Virtual Drive 0 전체를 삭제합니다. 따라서 Slot 0~7로 구성된 현재 RAID 5와 기존 데이터가 모두 삭제됩니다
MegaCli -CfgLdDel -L0 -a0
MegaCli -LDInfo -Lall -a0
MegaCli -PDList -a0
-Lall은 모든 Virtual Drive를 삭제할 수 있으므로 대상 Virtual Drive 번호를 확인한 후 개별 삭제하는 것이 안전합니다.
4-4. 디스크를 Unconfigured Good 상태로 변경
RAID 삭제 후 디스크 상태를 확인합니다.
MegaCli -PDList -a0
또는
MegaCli -PDList -a0 | grep -E "Slot Number|Firmware state"

4-5. Foreign Configuration 확인 및 제거
기존 RAID 정보가 남아 있는지 확인합니다.
MegaCli -CfgForeign -Scan -a0
MegaCli -CfgForeign -Display -a0
기존 RAID 정보를 사용하지 않는 경우 제거합니다.
MegaCli -CfgForeign -Clear -a0
4-6. RAID 0 재구성
Slot 0~3의 4개 디스크를 RAID 0으로 구성합니다.
MegaCli -CfgLdAdd -r0 [252:0,252:1,252:2,252:3] -a0
- -r0 : RAID 0 생성
- [252:0~3] : Enclosure 252의 Slot 0~3 사용
- -a0 : Adapter 0번 RAID Controller 사용

4-7. RAID 생성 결과 확인
MegaCli -LDInfo -Lall -a0
MegaCli -CfgDsply -a0
MegaCli -PDList -a0
MegaCli -ShowSummary -a0
또는 아래의 명령어 두개로 확인하는것이 가장 편합니다.
MegaCli -LDInfo -Lall -a0 | grep -E "Virtual Drive|RAID Level|Size|State|Number Of Drives"
MegaCli -PDList -a0 | grep -E "Slot Number|Firmware state"
State : Optimal = RAID 논리 볼륨 정상
Firmware state : Online, Spun Up = 물리 디스크 정상
정상적으로 생성되면 Virtual Drive 상태가 Optimal로 표시됩니다.


4-8. 작업 순서
기존 RAID 상태 확인
↓
대상 디스크 Offline
↓
기존 Virtual Drive 삭제
↓
Unconfigured Good 확인
↓
Foreign Configuration 확인 및 제거
↓
RAID 0 신규 생성
↓
Virtual Drive Optimal 확인
5. RAID 1 생성
RAID 1은 두 개의 디스크에 동일한 데이터를 저장하는 Mirroring 방식입니다.
1TB 디스크 2개를 RAID 1으로 구성할 경우 실제 사용 가능한 용량은 약 1TB입니다.
남아 있는 Unconfigured(good) Slot 4,5로 RAID 1을 만들겠습니다.
MegaCli -CfgLdAdd -r1[252:4,252:5] -a0
- -r1 : RAID 1 생성
- RAID 1 하나당 일반적으로 두 개의 디스크를 지정
6. RAID 5 생성
RAID 5는 최소 3개의 디스크가 필요하며 데이터와 패리티를 여러 디스크에 분산 저장합니다.
디스크 1개의 장애까지 대응할 수 있습니다.
*이전에 구성한 레이드 구성을 제거한 후 진행해야 합니다.

MegaCli -CfgLdAdd -r5 [252:0,252:1,252:2,252:3] -a0
- -r5 : RAID 5 생성
- 예제에서는 4개의 물리 디스크 사용

7. RAID 10 생성
RAID 10은 RAID 1의 Mirroring과 RAID 0의 Striping을 결합한 방식이며 최소 4개의 디스크가 필요합니다.
4개의 디스크를 구성하는 경우:
MegaCli -CfgSpanAdd -r10 -Array0[252:4,252:5] -Array1[252:6,252:7] -a0

8개의 디스크를 구성하는 경우:
MegaCli -CfgSpanAdd -r10 -Array0[252:0,252:1] -Array1[252:2,252:3] -Array2[252:4,252:5] -Array3[252:6,252:7] -a0
- -CfgSpanAdd : 여러 Array를 Span으로 구성
- -r10 : RAID 10 생성
- Array0, Array1 : 각각 RAID 1을 구성하는 디스크 그룹
8. RAID 설정 삭제
RAID 설정 삭제 시 해당 Virtual Drive에 저장된 데이터가 손실될 수 있으므로 반드시 대상 RAID를 확인한 후 진행합니다.
MegaCli -LDInfo -Lall -aALL
MegaCli -CfgLdDel -Lall -aALL
- LDInfo : 삭제 전 Virtual Drive 상태 확인

- CfgLdDel : 논리 디스크 및 RAID 구성 삭제(오프라인 꼭 확인 필요)

9. RAID Degraded 상태 확인
RAID 구성 디스크에 장애가 발생하면 Virtual Drive가 Degraded 상태로 변경될 수 있습니다.
MegaCli -LDInfo -Lall -aALL
MegaCli -ShowSummary -aALL
MegaCli -PDList -aALL
확인할 주요 상태는 다음과 같습니다.
Optimal = RAID 정상
Degraded = 일부 디스크 장애, RAID 동작 중
Offline = RAID 정상 동작 불가
10. 자동 Rebuild 설정
Controller의 자동 Rebuild 기능을 활성화하거나 현재 설정을 확인합니다.
MegaCli -AdpAutoRbld -Dsply -a0
MegaCli -AdpAutoRbld -Enbl -a0

자동 Rebuild 기능을 비활성화하는 경우:
MegaCli -AdpAutoRbld -Dsbl -a0
- Dsply : 현재 자동 Rebuild 설정 확인
- Enbl : 자동 Rebuild 활성화
- Dsbl : 자동 Rebuild 비활성화
11. Failed 디스크를 Good 상태로 변경
RAID 1에서 디스크가 비정상적으로 제거되거나 다시 장착된 경우 Unconfigured Bad 또는 Failed 상태로 인식될 수 있습니다.
본 테스트 환경에서는 다음과 같이 구성합니다.
- RAID 1: Slot 4 + Slot 5
- 테스트 대상: Slot 5
- Hot Spare: Slot 6
- Slot 7: Unconfigured(good)
먼저 물리 디스크 상태를 확인합니다.
MegaCli -PDList -a0 | grep -E "Slot Number|Firmware state|Foreign State"

테스트를 위해 Slot 5가 Unconfigured Bad 상태 즉 오프라인으로 변경한 후 다시 온라인 상태로 변경합니다.
MegaCli -PDMakeGood -PhysDrv [252:5] -a0
MegaCli -PDList -a0 | grep -E "Slot Number|Firmware state"
- PDMakeGood : 해당 물리 디스크를 Unconfigured(good) 상태로 변경
- 반드시 Enclosure ID와 Slot Number를 확인한 후 실행
12. RAID 1 자동 Rebuild 테스트
먼저 Auto Rebuild 기능이 활성화되어 있는지 확인합니다.
MegaCli -AdpAutoRbld -Dsply -a0
MegaCli -AdpAutoRbld -Enbl -a0
정상적으로 활성화된 경우 다음과 같이 표시됩니다.
Adapter 0: AutoRebuild is Enabled.
자동 Rebuild 테스트를 위해 RAID 1 구성원인 Slot 5 하나만 Offline 처리합니다.
MegaCli -PDOffline -PhysDrv [252:5] -a0
MegaCli -LDInfo -Lall -a0 | grep -E "Virtual Drive|RAID Level|State"
MegaCli -PDList -a0 | grep -E "Slot Number|Firmware state"
Slot 5가 Offline 처리되면 RAID 1은 일시적으로 Degraded 상태가 됩니다.
Hot Spare로 지정한 Slot 6이 정상적으로 동작하면 Slot 6을 이용한 Rebuild가 자동으로 시작됩니다.
Slot 4 : Online
Slot 5 : Offline
Slot 6 : Rebuild
RAID 1 : Degraded
13. RAID 1 디스크 Rebuild 테스트
본 테스트에서는 RAID 1을 구성하는 디스크 중 Slot 5를 Offline 상태로 변경한 후 물리적으로 디스크를 제거하였다가 다시 장착하여 장애 상황을 재현했습니다. 이후 MegaCli 명령어를 이용하여 Rebuild를 진행하고 정상 복구 여부를 확인했습니다.
테스트 환경은 다음과 같습니다.
- RAID Level: RAID 1
- 정상 디스크: Slot 4
- 테스트 대상 디스크: Slot 5
- Enclosure ID: 252
- Adapter: 0
13-1. RAID 및 디스크 상태 확인
작업 전 RAID와 물리 디스크 상태를 확인합니다.
MegaCli -LDInfo -Lall -a0 | grep -E "Virtual Drive|RAID Level|State|Number Of Drives"
MegaCli -PDList -a0 | grep -E "Slot Number|Firmware state"
정상 상태에서는 RAID 1을 구성하는 Slot 4와 Slot 5가 Online 상태로 확인됩니다.
Slot Number: 4
Firmware state: Online, Spun Up
Slot Number: 5
Firmware state: Online, Spun Up
13-2. Slot 5 Offline 처리
장애 상황을 재현하기 위해 RAID 1 구성 디스크 중 Slot 5만 Offline 상태로 변경합니다.
MegaCli -PDOffline -PhysDrv [252:5] -a0
MegaCli -PDList -a0 | grep -E "Slot Number|Firmware state"
- PDOffline : RAID 구성 중인 물리 디스크를 Offline 상태로 변경
- [252:5] : Enclosure ID 252의 Slot 5
- -a0 : Adapter 0번 RAID Controller에 적용
정상적으로 적용되면 Slot 5가 다음과 같이 표시됩니다.
Slot Number: 5
Firmware state: Offline

RAID 1은 한 개의 디스크만 정상적으로 동작하는 상태가 되므로 Virtual Drive는 Degraded 상태로 변경됩니다.
13-3. Slot 5 물리 제거 및 재장착
Slot 5 디스크가 Offline 상태인 것을 확인한 후 해당 디스크를 서버에서 물리적으로 제거합니다.
이후 동일한 Slot 5 위치에 디스크를 다시 장착합니다.
재장착 후 물리 디스크 상태를 확인합니다.
MegaCli -PDList -a0 | grep -E "Slot Number|Firmware state|Foreign State"
본 테스트에서는 재장착한 Slot 5 디스크가 다음과 같이 Unconfigured(good) 상태로 인식되었습니다.

Unconfigured(good)은 디스크 자체는 정상적으로 인식되지만 현재 RAID 구성에는 포함되어 있지 않은 상태입니다.
13-4. Slot 5를 Rebuild 대상으로 지정
재장착한 Slot 5 디스크를 RAID의 대체 디스크로 지정합니다.

본 테스트에서는 다음과 같이 정상적으로 적용되었습니다.
Adapter: 0: Set Physical Drive at EnclId-252 SlotId-5 as Hot Spare Success.
Exit Code: 0x00
RAID 1이 Degraded 상태이므로 Slot 5를 대체 가능한 디스크로 지정한 후 Rebuild가 시작되었습니다.
13-5. Rebuild 시작 여부 확인
물리 디스크 상태를 다시 확인합니다.
MegaCli -PDList -a0 | grep -E "Slot Number|Firmware state"
Rebuild가 정상적으로 시작되면 Slot 5가 다음과 같이 표시됩니다.
Slot Number: 4
Firmware state: Online, Spun Up
Slot Number: 5
Firmware state: Rebuild
Firmware state: Rebuild가 확인되면 Slot 4의 데이터를 Slot 5로 복구하는 작업이 진행 중인 상태입니다.

14. Rebuild 진행률 확인
Rebuild가 진행 중인 Slot 5의 진행률을 확인합니다.
MegaCli -PDRbld -ShowProg -PhysDrv [252:5] -a0

물리 디스크 상태는 다음 명령어로 확인합니다.
MegaCli -PDList -a0 | grep -E "Slot Number|Firmware state"
Virtual Drive 상태는 다음과 같이 확인합니다.
MegaCli -LDInfo -Lall -a0 | grep -E "Virtual Drive|RAID Level|State"
Rebuild 진행 중에는 일반적으로 다음과 같이 확인됩니다.
Slot 4 : Online
Slot 5 : Rebuild
Virtual Drive : Degraded
15. Rebuild 완료 확인
Rebuild가 100% 완료된 후 물리 디스크와 RAID 상태를 최종 확인합니다.
MegaCli -PDList -a0 | grep -E "Slot Number|Firmware state"
MegaCli -LDInfo -Lall -a0 | grep -E "Virtual Drive|RAID Level|State"
정상적으로 복구되면 Slot 4와 Slot 5가 모두 Online으로 변경됩니다.
Slot Number: 4
Firmware state: Online, Spun Up
Slot Number: 5
Firmware state: Online, Spun Up

Virtual Drive 역시 다음과 같이 Optimal 상태로 복구됩니다.
State : Optimal
15-1. 전체 테스트 순서
RAID 1 정상 상태
Slot 4 : Online
Slot 5 : Online
↓
Slot 5 Offline 처리
↓
Slot 5 물리 제거
↓
Slot 5 재장착
↓
Slot 5 : Unconfigured(good)
↓
Slot 5 Rebuild 대상으로 지정
↓
Slot 5 : Rebuild
↓
Rebuild 진행률 확인
↓
Rebuild 100% 완료
↓
Slot 4 : Online
Slot 5 : Online
↓
Virtual Drive : Optimal
본 테스트에서는 실제 디스크 장애 상황과 유사하게 Slot 5를 Offline 처리한 후 물리적으로 제거 및 재장착하고, MegaCli 명령어를 통해 Rebuild를 수행하여 RAID 1이 정상적으로 Optimal 상태로 복구되는 것을 확인했습니다.
'7. Storage & Backup > 스토리지' 카테고리의 다른 글
| Windows - MSM RAID 설정 및 복구테스트 (0) | 2026.08.12 |
|---|---|
| Windows OS에 MSM 버전 17.05.06.00 / JRE를 설치하는 방법 (0) | 2026.08.12 |
| MegaRAID Storage Manager(MSM) 설치 - Windows 2022 (0) | 2026.08.11 |
| RAID 및 WEB BIOS 구성 (0) | 2026.07.21 |