Skip to content

hddtemp와 mrtg를 이용한 하드디스크 온도 체크

조회 수 5450 추천 수 0 2013.12.19 01:28:41
이번 포스팅에서는 hddtemp 패키지와 mrtg를 이용한 하드디스크 온도 모니터링 방법을 소개합니다.

- 전제조건 : mrtg가 셋팅되어 정상작동 하고 있을 것

순서가 반대로 되었지만 나중에 mrtg와 snmp에 대한 포스팅도 작성할 예정입니다.

● hddtemp 패키지
하드디스크의 온도를 알려주는 패키지입니다. 메인보드에서 반드시 S.M.A.R.T를 지원해야 한다는 전제조건이 있네요. 설치는 Fedora의 경우 yum 으로 간단하게 설치할 수 있습니다.

# yum list hddtemp
hddtemp.i386                             0.3-0.15.beta15.fc9    installed


저의 경우엔 이미 설치를 하였기 때문에 위처럼 나오지만 설치가 안되신 분들은 아래 명령을 이용하여 설치할 수가 있습니다.

# yum install hddtemp

특별한 의존성 패키지도 없기 때문에 hddtemp만 설치될 것입니다. 명령은 "hddtemp"이고 아래와 같은 옵션으로 간단하게 온도를 체크할 수 있습니다. 저의 경우엔 SATA 하드디스크 3개가 장착되어 있기 때문에 디스크 디바이스가 "/dev/sda, /dev/sdb, /dev/sdc"이므로 디바이스 명을 인수로 주었습니다.
IDE방식은 /dev/hdx 형식으로 되어 있는 경우도 있으니 해당 머신의 디스크 디바이스를 확인해 주세요.

# hddtemp /dev/sda
/dev/sda: Hitachi HDP725032GLAT80: 35°C
# hddtemp /dev/sdb
/dev/sdb: WDC WD10EACS-00D6B0: 31°C
# hddtemp /dev/sdc
/dev/sdc: ST31000340AS: 31°C

제 리눅스 박스의 하드디스크는 디스크 장착베이에 팬이 달려있는 놈이라서 그런지 온도가 그렇게 높지 않네요!!
이제 mrtg에서 계산 하기 편하도록 하드디스크 모델명이나 단위는 빼고 숫자만 출력해보도록 하겠습니다.

# hddtemp -n /dev/sda
35

-n 옵션을 주니 간단하게 해결되네요.

아래는 mrtg의 환경설정 부분입니다. mrtg.cfg 파일을 수정하기 전에는 백업을 꼭 잊지마셔요;;
mrtg.cfg 파일은 yum을 이용하여 설치하였을 경우 디폴트로 /etc/mrtg/mrtg.cfg 에 존재합니다.

Target[hddtemp_sda]: `/usr/sbin/hddtemp -n /dev/sda`
WithPeak[hddtemp_sda]: my
MaxBytes[hddtemp_sda]: 100
Title[hddtemp_sda]: IDE HDD Temperature(/dev/sda)
Options[hddtemp_sda]: absolute,gauge,nopercent,noinfo
YLegend[hddtemp_sda]: Temperature
LegendI[hddtemp_sda]: Temperature:
LegendO[hddtemp_sda]:
Legend1[hddtemp_sda]: HDD Temperature in Degress Celcius
Legend2[hddtemp_sda]:
ShortLegend[hddtemp_sda]: C
PageTop[hddtemp_sda]: <H1>IDE HDD Temperature(/dev/sda)</H1>

위 내용을 추가해주시면 됩니다.
mrtg에 지식이 있으신 분은 자세한 설정을 바꾸셔도 되고 자신 없는 분들은 위 설정을 복사해서 쓰시면 될 겁니다. 하드디스크가 여러개이신 분들은 "hddtemp_sda" 부분을 수정하셔서 디스크의 갯수만큼 복사해주시면 됩니다.
설정이 끝났으면 인덱스 페이지를 새로 만들어 주어야죠 ?

# indexmaker /etc/mrtg/mrtg.cfg > /var/www/mrtg/index.html

인덱스 파일의 경로등은 적절하게....

mrtg.jpg



단.. 문제점이 있습니다. mrtg를 실행시켜 보면 아래와 같은 에러메시지가 출력됩니다. 뭐 특별히 신경쓰지 않아도 된다고 적혀있고 실제로 모니터링도 잘 되지만 문제는 cron에 등록된 mrtg가 실행될때마다 에러가 발생하니 메일박스에 아래 메시지가 계속 전송된다는 거죠.
2008-09-27 20:15:01: WARNING: Problem with External get '/usr/sbin/hddtemp -n /dev/sda': Expected a Number for 'out' but nothing' 2008-09-27 20:15:01: WARNING: Problem with External get '/usr/sbin/hddtemp -n /dev/sdb': Expected a Number for 'out' but nothing' 2008-09-27 20:15:01: WARNING: Problem with External get '/usr/sbin/hddtemp -n /dev/sdc': Expected a Number for 'out' but nothing' 2008-09-27 20:15:02: ERROR: Target[hddtemp_sda][_OUT_] ' $target->[2]{$mode} ' did not eval into defined data 2008-09-27 20:15:02: ERROR: Target[hddtemp_sdb][_OUT_] ' $target->[3]{$mode} ' did not eval into defined data 2008-09-27 20:15:02: ERROR: Target[hddtemp_sdc][_OUT_] ' $target->[4]{$mode} ' did not eval into defined data
전 5분 간격으로 mrtg로 체크하게 해놓았는데.. 이 에러메시지가 5분마다 메일박스에 차곡차곡 쌓여있습니다. ;ㅁ;
이 문제만 어떻게 해결한다면 좋겠는데.. 현재로는 뾰족한 해결방법을 찾지 못했습니다.

"2&>1 > /dev/null" 로 리다이렉트를 해보아도 소용없고.. crontab의 전송메일 주소를 바꾸어 보려 했지만 근본적인 해결책이 아니라 일단 그만두었습니다.

이 문제는 해결되는대로 다시 포스팅을 하던가 업데이트를 하도록 하죠.


출처 : http://onedayorsomeday.tistory.com/38
profile

일요일은 짜빠게뤼~ 먹는날~^^

첨부
엮인글 :
http://adminplay.com/242630/64d/trackback
List of Articles
번호 제목 글쓴이 날짜 조회 수sort
367 도메인 Status 상태별 설명 안내 ADMINPLAY 2012-12-28 4832
366 dpkg 사용법 ADMINPLAY 2013-04-03 4930
365 HDD Guardian (a graphical user interface for smartctl) ADMINPLAY 2013-09-22 4951
364 ubuntu 10.04 에서 Nginx, Mysql, PHP5 ADMINPLAY 2013-02-28 5124
363 HP 서버 disk 증설 (hpacucli 사용) ADMINPLAY 2015-08-05 5126
362 top 화면 내용중 load average와 PRI : priority(우선순위... ADMINPLAY 2013-12-24 5138
361 리눅스 메모리 관리, 왜 메모리 여유공간이 없을까? (top ... ADMINPLAY 2013-04-25 5241
360 make 정리 ADMINPLAY 2013-05-12 5264
359 ZFS 파일에 ACL 설정 ADMINPLAY 2014-02-03 5271
358 windows smartctl ADMINPLAY 2013-09-22 5273
357 EXT4 파일 시스템을 Btrfs 파일 시스템으로 변환하기 ADMINPLAY 2015-07-07 5339
356 SSL 패스워드 삭제 하기 ADMINPLAY 2014-04-27 5347
355 tar 압축을 실수로 디렉토리 생성 안하고 풀었을때 대처법 ADMINPLAY 2013-09-22 5386
354 ll 명령시 날짜 전체가 보이도록 하기 ADMINPLAY 2014-01-02 5431
» hddtemp와 mrtg를 이용한 하드디스크 온도 체크 file ADMINPLAY 2013-12-19 5450
352 python과 mysql 연동시 libmysqlclient_r.so.* 에러가 날 ... ADMINPLAY 2014-03-27 5519
351 error: Hm, kex protocol error: type 30 seq 1 [preauth]... file ADMINPLAY 2016-05-20 5535
350 linux 커널 파라메터 수정 ADMINPLAY 2013-05-12 5554
349 우분투(Ubuntu) ssh 설정하기 ADMINPLAY 2013-02-27 5597
348 운영중인 Linux 서버에서 NTFS 파일 시스템 삭제하기 ADMINPLAY 2013-01-16 5673

Copyright ADMINPLAY corp. All rights reserved.

abcXYZ, 세종대왕,1234

abcXYZ, 세종대왕,1234