하드 디스크, CD-ROM등의 디바이스의 설정을 보고 조절하는 명령어

사용법 : hdparm [옵션] [장치명] 
-a [sectcount]: 파일 시스템 readahead을 설정하거나 정보를 볼 수 있다. 
-A[0 또는 1] : Drive의 read-lookahead 설정을 끄거나 켤 수 있다. 
-c [chipset_mode] : (E)IDE 32-bit I/O 설정을 하거나 정보를 볼 수 있다. 
-C : IDE의 전원 모드 상태를 검사한다. 
-d [0 또는 1] : DMA 기능을 끄거나 켤 수 있다. 
-E : CD-ROM의 속도를 설정한다. 
-f : Device exit를 위해 버퍼 캐쉬(buffer cache)를 동기화시킨다. 
-g : Drive의 geometry를 볼 수 있다. 
-h : 사용법을 보여준다. 
-i : 부트 시간에 얻을 수 있는 Drive의 정보를 볼 수 있다. 
-l : Drive로 부터 직접 Drive 정보를 볼 수 있다. 
-k [0 또는 1]: Keep_settings_over_rest을 설정하거나 정보를 볼 수 있다. 
-K [0 또는 1]: Drive의 Keep_features_over_reset을 설정한다. 
-L [0 또는 1]: Drive의 도어락을 설정한다. 
-m [sectcoun]: Drive의 다중 섹터 수를 설정하거나 정보를 볼 수 있다. 
-p [0~5중 하나]: Drive의 prefetch수를 설정한다. 
-P [sectcount]: 장치의 내부적인 prefetch 구조를 위한 최대 섹터 수를 설정한다. 
-q : 옵션을 화면에 보이지 않는다. -i 옵션 -v 옵션 -t 옵션 -T 옵션에는 적용되지 않는다. 
-r [0 또는 1]: 읽기 전용(read-only)모드로 설정하거나 정보를 보여준다. 
-R : IDE 인터페이스를 등록한다. 
-S [timeout]: 드라이브의 standby (spindown) 시간을 설정한다. 
-T : 캐쉬 읽기 시간을 볼 수 있다. 
-t : 장치 읽기 시간을 볼 수 있다. 
-u [0 또는 1]: 장치의 interrupt-unmask를 설정하거나 정보를 보여준다. 
-U : IDE 인터페이스를 제거한다. 
-v : -i 옵션을 제외하고 모든 설정을 보여준다. 
-W [0 또는 1] : IDE 드라이브의 쓰기-캐쉬(write-caching) 기능을 on/off한다. 
-X [xfermode]: 새로운 (E)IDE/ATA2 드라이브를 위해 IDE 전송 모드를 설정한다. 
-y : IDE 드라이브를 standby 모드로 전환한다. 
-Y : IDE 드라이브를 sleep 모드로 전환한다. 
-Z : seagate auto-powersaving 모드를 disable 시킨다. 

하드디스크의 정보를 보도록 하자. 32-bit I/O을 지원하고, DMA기능을 사용하고 있다.

# hdparm /dev/hda 
/dev/hda: 
 multcount    = 16 (on) 
 I/O support  =  1 (32-bit) 
 unmaskirq    =  0 (off) 
 using_dma    =  1 (on) 
 keepsettings =  0 (off) 
 nowerr       =  0 (off) 
 readonly     =  0 (off) 
 readahead    =  8 (on) 
 geometry     = 2498/255/63, sectors = 40132503, start = 0 
 busstate     =  1 (on) 

시디롬 장치의 DMA 기능을 보도록 하자. using-dma로써 설정이 On이 되어 있다.

# hdparm -d /dev/hdd 

/dev/hdd: 
 using_dma = 1 (on) 

DMA기능을 off로 설정하려면, -d 0 옵션을 사용한다.

# hdparm -d 0 /dev/hdd 

/dev/hdd: 
 setting using_dma to 0 (off) 
 using_dma = 0 (off) 

일부 레드햇 계열 리눅스 배포판이 설치된 시스템에서 LG CDROM 40배속과 48배속을 사용할 경우 CD 인식이 안 되거나 다운 되는 현상이 발생하는 경우가 발견 되었다. 이것은 시스템의 DMA 기능 사용에서 생기는 문제인데 hdparm 명령으로 DMA 사용을 off 시키면 해결된다.

# hdparm -c1 -d0 /dev/cdrom 
2005/06/20 20:35 2005/06/20 20:35

트랙백 주소 :: 이 글에는 트랙백을 보낼 수 없습니다