Ubuntu 서버 환경에서 디스크 장치, RAID Controller, 그리고 RAID 뒤에 숨겨진 Physical Disk의 상태(SMART)를 확인하는 방법을 정리한다.
환경: Ubuntu 22.04 + LSI MegaRAID SAS3108 (Intel RMS3CC080 OEM) + Intel SSD S4510 480GB x2 + RAID1
[01] 전체 구조 이해
OS가 보는 디스크와 실제 Physical Disk는 다를 수 있다. RAID Controller가 중간에 끼면 OS는 Virtual Disk만 본다.
graph TD
OS["Ubuntu OS
/dev/sda (446GiB)"] --> VD["Virtual Disk
(RAID1 Mirror)"]
VD --> CTRL["LSI MegaRAID SAS3108
RAID Controller"]
CTRL --> PD1["Physical Disk 8
Intel SSD 480GB"]
CTRL --> PD2["Physical Disk 9
Intel SSD 480GB"]
style OS fill:#e3f2fd,stroke:#1565c0
style VD fill:#fff3e0,stroke:#e65100
style CTRL fill:#fce4ec,stroke:#c62828
style PD1 fill:#e8f5e9,stroke:#2e7d32
style PD2 fill:#e8f5e9,stroke:#2e7d32
[02] 디스크 장치 및 슬롯 확인
2-1. 기본 디스크 목록
1
|
lsblk -d -o NAME,SIZE,MODEL,SERIAL
|
출력 예시:
1
2
|
NAME SIZE MODEL SERIAL
sda 446.1G RMS3CC080 008348090b453e172b10c13010b00506
|
| 항목 |
설명 |
| NAME |
디스크 장치명 |
| SIZE |
디스크 용량 |
| MODEL |
디스크 모델 (Virtual Disk 모델로 표시될 수 있음) |
| SERIAL |
디스크 시리얼 |
2-2. SCSI 장치 확인
출력 예시:
1
|
[0:2:0:0] disk Intel RMS3CC080 4.65 /dev/sda /dev/sg0
|
| 항목 |
설명 |
| disk |
디스크 타입 |
| RMS3CC080 |
RAID Controller 또는 Virtual Disk |
| /dev/sda |
OS에 노출된 Virtual Disk |
| /dev/sg0 |
Generic SCSI Device |
2-3. PCI 장치로 RAID Controller 확인
1
|
lspci | grep -i -E 'raid|sas|scsi|lsi|broadcom'
|
출력 예시:
1
|
5e:00.0 RAID bus controller: Broadcom / LSI MegaRAID SAS-3 3108 [Invader] (rev 02)
|
2-4. RAID 드라이버 확인
출력 예시:
[03] RAID 구성 확인
3-1. Linux Software RAID (mdadm)
출력 예시:
1
2
|
Personalities : [raid1] [raid5] [raid6]
unused devices: <none>
|
unused devices: <none>이면 mdadm 기반 Software RAID는 사용 중이지 않다. 위 환경처럼 Hardware RAID(MegaRAID)인 경우 정상이다.
Physical Disk 상태를 확인하려면 smartmontools 패키지가 필요하다.
1
2
|
sudo apt update
sudo apt install smartmontools -y
|
3-3. RAID 뒤 Physical Disk 검색
출력 예시:
1
2
3
|
/dev/sda -d scsi
/dev/bus/0 -d megaraid,8
/dev/bus/0 -d megaraid,9
|
| 항목 |
설명 |
megaraid,8 |
Physical Disk index 8 |
megaraid,9 |
Physical Disk index 9 |
/dev/bus/0은 RAID Controller에 대한 직접 접근 경로이고, -d megaraid,N 옵션으로 각 Physical Disk를 지정한다.
[04] Physical Disk SMART 확인
4-1. 단일 디스크 상세 확인
1
|
sudo smartctl -a -d megaraid,8 /dev/bus/0
|
출력 예시 (주요 항목):
1
2
3
4
|
Device Model: INTEL SSDSC2KB480G8
Serial Number: BTYF2083027D480BGN
User Capacity: 480,103,981,056 bytes [480 GB]
SMART overall-health self-assessment test result: PASSED
|
4-2. 여러 디스크 일괄 확인
1
2
3
4
5
6
|
for i in 8 9; do
echo "========================="
echo "Physical Disk $i"
sudo smartctl -a -d megaraid,$i /dev/bus/0 | \
grep -E "Product|Model|Serial|User Capacity|SMART overall"
done
|
출력 예시:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
=========================
Physical Disk 8
Device Model: INTEL SSDSC2KB480G8
Serial Number: BTYF2083027D480BGN
User Capacity: 480 GB
SMART overall-health self-assessment test result: PASSED
=========================
Physical Disk 9
Device Model: INTEL SSDSC2KB480G8
Serial Number: BTYF20830230480BGN
User Capacity: 480 GB
SMART overall-health self-assessment test result: PASSED
|
[05] RAID 구성 추론
현재 예시의 경우:
| 항목 |
값 |
| Physical Disk |
480GB SSD x 2 |
| OS 노출 용량 |
446GiB (≈ 480GB) |
| 추론 |
RAID1 (Mirror) |
만약 OS 노출 용량이 ~960GB였다면 RAID0/JBOD, ~960GB에서 일부 빠진 형태였다면 RAID5/6로 추론할 수 있다.
[06] SSD 상태 핵심 점검 포인트
6-1. 온도 확인
1
|
sudo smartctl -a -d megaraid,8 /dev/bus/0 | grep Temperature
|
출력 예시:
| 온도 범위 |
상태 |
| 0~40°C |
정상 |
| 40~60°C |
주의 (워크로드 점검) |
| 60°C 이상 |
위험 (쿨링/장애 점검) |
6-2. Wear Level (수명)
1
|
sudo smartctl -a -d megaraid,8 /dev/bus/0 | grep -i wear
|
출력 예시:
1
2
|
Workld_Media_Wear_Indic
Media_Wearout_Indicator
|
SSD 수명 지표. 값이 100에서 0으로 줄어들며, 0에 가까울수록 교체 시점이다.
6-3. 배드블록 확인
1
2
|
sudo smartctl -a -d megaraid,8 /dev/bus/0 | \
grep -E "Reallocated|Pending|CRC"
|
정상 출력 예시:
1
2
3
|
Reallocated_Sector_Ct 0
Pending_Sector_Count 0
CRC_Error_Count 0
|
Reallocated_Sector_Ct 또는 Pending_Sector_Count가 0이 아니면 디스크 교체를 검토해야 한다. CRC 오류가 누적되면 케이블/연결 문제일 수 있다.
[07] 빠른 시작 — Step by Step
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
# Step 1. 디스크 확인
lsblk -d -o NAME,SIZE,MODEL,SERIAL
# Step 2. RAID Controller 확인
lspci | grep -i -E 'raid|sas|scsi|lsi|broadcom'
# Step 3. RAID Driver 확인
lsmod | grep megaraid
# Step 4. smartmontools 설치
sudo apt update && sudo apt install smartmontools -y
# Step 5. Physical Disk 검색
sudo smartctl --scan
# Step 6. Physical Disk 상태 확인
sudo smartctl -a -d megaraid,8 /dev/bus/0
# Step 7. 모든 디스크 상태 일괄 확인
for i in 8 9; do
echo "========================="
echo "PD $i"
sudo smartctl -a -d megaraid,$i /dev/bus/0 | \
grep -E "Model|Serial|User Capacity|SMART overall"
done
|
[08] 정리
| 핵심 포인트 |
설명 |
| OS에 보이는 디스크 ≠ Physical Disk |
RAID Controller가 있으면 OS는 Virtual Disk만 본다 |
| Hardware RAID 식별 |
lspci로 RAID Controller 모델 확인, /proc/mdstat로 Software RAID 여부 확인 |
| Physical Disk 접근 |
smartctl -d megaraid,N /dev/bus/0 옵션 필수 |
| RAID 구성 추론 |
OS 노출 용량 ÷ Physical Disk 개수로 RAID Level 유추 |
| SMART 점검 |
온도, Wear Level, Reallocated/Pending Sector, CRC 오류 |
RAID 환경에서는 OS가 보이는 디스크만 점검하면 안 된다. RAID Controller 뒤의 Physical Disk 각각의 SMART 상태를 확인해야 장애를 미리 발견할 수 있다.