<smartctl>
smartctl 명령어는 SMART(Self-Monitoring, Analysis, and Reporting Technology) 기능이 탑재된 하드디스크를 점검하는 도구 입니다.
하드디스크 ROM 에 기록되는 형태로서 , I/O 에러 발생으로 write 가 잠겨 /var/log/messages 상에 남지 않는 I/O 에러를 검출하는 목적으로 사용할 수 있습니다 .
1) 설치하기
# yum install smartmontools |
2) 명령어 사용법
# smartctl [옵션] [장치명]
# 기본적으로 모든 정보를 확인 할 때는 -a(–all) 옵션을 많이 사용합니다.
(ex. smartctl -a /dev/sda)
# 간단한 하드디스크의 상태를 확인 할 때는 -H(–health) 옵션을 사용합니다.
(ex. smartctl -H /dev/sda)
# 간단한 하드디스크의 정보를 확인 할 때는 -i(–info) 옵션을 사용합니다.
(ex. smartctl -i /dev/sda)
# 명령어 사용 중 smart 기능이 잠겨있을 때에는 -s on(–smart=VALUE) 옵션을 사용합니다.
(ex. smartctl -s on /dev/sda) |
3) 주요 속성 값
– Raw_Read_Error_Rate
디스크 표면으로 부터 데이터를 읽는 과정에 문제가 있는 경우 (정상적인 경우 0)
보통 외부에서 물리적인 충격이 가해지면 수치가 상승
– Sping_up_Time
플레터 회전에 제로 rpm 에서 최대 rpm에 도달하는 평균 시간
– Start_Stop_Count
플레터가 회전하고 정지한 횟수
– Reallocated_Sector_Ct
섹터에 문제가 생겨서 스페어영역의 대체 스페어영역으로 섹터 이동 (정상적인 경우 0)
– Seek_Error_Rate
탐색 오류율 (정상적인 경우 0)
– Power_On_Hours
하드디스크에 전원이 인가된 시간
– Spin_Retry_Count
최대 rpm에 도달하기 위해서 회전을 시도하는 횟수 (정상적인 경우 0)
– Power_Cycle_Count
전원 on/off 횟수
– Power-Off_retract_Count
헤드가 플레터(디스크)에서 벗어나는 횟수
– Load_Cycle_Count
헤드가 플레터 위로 진입한 횟수
– Temperature_Celsius
하드디스크 온도
– Reallocated_Event_Count
스페어 영역으로 대체된 섹터로 부터 데이터를 읽어간 횟수
– Hardware ecc recovered
ECC 오류검출로 인하여 복구된 횟수
– Current_Pending_Sector
불안전한 섹터로 스페어영역 섹터로 remap을 준비중이거나 읽는 과정에 문제가 생긴 섹터
(=준 배드섹터,정상적인 경우 0)
– Offline_Uncorrectable
읽기/쓰기 에 문제가 생긴 섹터, 즉 디스크 표면이 손상됨(=배드섹터, 정상적인 경우 0)
– UDMA_CRC_Error_Count
하드디스크 인터페이스를 통해 데이터 전송과정에 발생한 CRC 체크섬 오류 횟수
(정상적인 경우 0)
– Multi_Zone_Error_Rate
섹터에 쓰기과정에 발생한 에러가 검출된 횟수
* 굵은글씨에 속성값은 정상적인 디스크라면 값이 0 이여야 합니다. |
<hdparm>
hdparm 명령어는 하드디스크의 설정 값을 확인 할 때 사용하는 명령어입니다.
보통은 하드디스크의 속도를 체크할 때 많이 사용합니다.
1) 설치
# yum install hdparm
# 명령어 위치 : /sbin/hdparm |
2) 명령어 사용법
# hdparm [옵션] [장치명]
# 기본적으로 디스크의 속도를 체크 할때 -tT 옵션을 많이 사용합니다.
(ex. hdparm -tT /dev/sda)
-t옵션은 버퍼되어 있지 않은 데이터를 읽는 속도를 체크하고
-T옵션은 버퍼된 데이터를 읽는 속도를 체크합니다.
두 옵션을 함께 사용하며 현재 속도차이가 얼마인지 알 수 있습니다.
명령어 사용 시 아래와 같은 결과 값을 볼 수 있습니다.
/dev/sda:
Timing cached reads: 8806 MB in 2.00 seconds = 4406.90 MB/sec
Timing buffered disk reads: 574 MB in 3.01 seconds = 191.01 MB/sec
# 그 외 나머지 옵션
-a : 파일 시스템의 readahead에 대한 파라미터 값을 확인 및 설정
* readahead는 하드디스크에 접근할 때 미리 읽는 섹터개수를 알려줌
-A : 드라이브의 read-lookahead flag (0/1)를 설정
-b : BUS상태 값(0 == off, 1 == on, 2 == tristate)을 확인 및 설정
-B : APM(Advanced Power Management)값(범위:1~255)설정
-c : IDE32-bit IO설정에 대한 확인 및 설정
-C : IDE장치의 파워모드상태 점검
-d : using_dma 플래그 설정 및 확인
-E : CD-ROM 드라이브 속도 설정
-f : 지정한 장치에 대한 버퍼캐쉬 동기화 그리고 빠져나감
-g : 드라이브 geometry값을 표시
-i : 드라이브 identification값 표시, HDD의 모델명 참조
-k : keep_settings_over_reset 플래그값(0/1)의 설정 및 확인
-K : 드라이브 keep_features_over_reset 플래그 값(0/1)의 설정 및 확인
-L : 드라이브 doorlock값(0/1)설정
-m : multiple sector count 값 확인 및 점검
-n : ignore-write-errors 값 (0/1) 설정 및 확인
-P : 드라이브 prefetch cont 값 설정
-t : 디스크 드라이브의 읽는 속도를 체크함, 버퍼링 없이 실제 읽는 속도 측정
-T : 디스크 드라이브에 대한 캐시데이터 읽는 속도를 체크함, 버퍼링 데이터 읽는 속도 측정
-u : unmaskirq 플래그 값 (0/1) 설정 및 확인
-y : IDE 드라이브를 준비상태로 둠
-Y : IDE 드라이브를 휴지 (sleep) 상태로 둠
-z : 파티션의 테이블정보를 다시 읽어 들임
-Z : Seagate 장치에 대한 auto-powersaving 모드를 비활성화 함 |
hdparm -tT /디스크위치