Linux ETC

hdparm 옵션 알아보기

2010.02.04 23:48

sylee 조회 수:24238

 

hdparm 는 Linux IDE/ST-506 장치의 여러가지 하드 디스크 ioctls 옵션을 정할수 있습니다.
그리고 여러가지 옵션들이 커널 2.0.10 버젼 이상에서 포함된 새로운 (E)IDE 장치에서만 동작합니다.


옵션이 주어지지 않는다면, -acdgkmnru 으로 실행됩니다.

 

[옵션]
-a
 파일 시스템의 미리 읽기(read-ahead) 섹터 수의 정보를 보여주거나 정할수 있습니다.
 이 옵션으로 큰 화일이 연속되는 경우의 성능이 증대될수 있으며, 그것은 실행중인 작업이 필요하게 되는 예상의 추가적인 블럭을 미 리 가져 옴으로써 성능을 증대시킵니다

-A
 IDE 장치의 미리 읽기(read-lookahead) 기능을 on/off 할수 있습니다. (대개 기본적으로 기능이 켜져(ON) 있습니다).

-c
 (E)IDE 장치의 32-bit 입출력(I/O) 기능을 켜거나 알아볼수 있습니다.
 이 옵션에서 숫자로 32-bit 입출력(I/O)을 조정할수 있습니다:

 32-bit 입출력(I/O)를 끄려면 0
 32-bit 입출력(I/O)를 켜려면 1
 여러 칩셋에서 요구되는 특별한 동기 배열(syncsequence)을 포함한 32-bit 입출력(I/O)를 켜려면 3
 이 값(3) 은 거의 모든 32-bit IDE 칩셋에서 동작하지만, 좀 더 부담(overhead)를 줄수 있습니다.

-C
 IDE 장치의 전원 모드 상태를 검사합니다.  이것은 항상 이 중 하나의 상태가 될 것 입니다.
 unknown (장치가 이 명령어를 지원하지 않습니다.)
 active/idle (보통 상태입니다.)
 standby (저 전력 상태입니다. 장치의 모터 회전이 멈춥니다.)
 sleeping (장치가 완전히 정지합니다.).
 -S,-y,-Y,-Z 옵션으로 IDE 장치의 전원 모드를 조정 할 수 있습니다.

-d
 장치의 직접 메모리 접근(DMA) 옵션을 켜거나 끌수 있습니다.

-E
 CD-ROM의 속도를 설정합니다.
 이것은 CD-ROM이 자동적으로 속도를 바꾸기 때문에 일반적으로 필요한 옵션은 아닙니다.

-f
 장치가 나갈때 버퍼 캐쉬(buffer cache)를 동기화 시키고 비웁니다.
 이 동작은 또한 -t 와 -T 옵션이 동작할때 같이 실행됩니다.

-g 
 장치의 구조 (실린더, 헤드, 섹터), 장치의 크기 (섹터), 그리고 장치의 시작 변위(offset) (섹터)를 장치의

 시작부분에서 표시합니다.

-h
 사용 방법을 간결하게 표시합니다.

-i
 가능하다면 부트 시간에 얻을수 있는 확인 정보를 표시합니다.
 이것은 지금의 IDE 장치의 특징이고, 오래된 장치에서는 아마 지원하지 않을 것 입니다.


-I
 장치로 부터 직접 어떠한 변화나 수정이 없는 본래의 확인 정보를 요청합니다.

-k
 장치의 리셋에도 셋팅을 유지하는 옵션(keep_settings_over_rest)을 설정하거나 보여줍니다.

-K
 리셋에도 특징을 유지하는 옵션(keep_features_over_reset)을 설정합니다.
 모든 장치가 이것을 지원하는 것은 아닙니다.

-L
 장치의 도어락을 설정합니다.
 이 옵션을 으로 설정하므로써 도어락을 풀 수 있습니다. 일반적으로 리눅스는 디스크 사용에 따라 도어락을 자동적으로 유지합니다.

-m
 장치의 다중 섹터 입출력(I/O)을 위해 섹터 수를 설정하거나 정보를 알아냅니다.
 이 옵션을 끄기 위해서는 0 을 사용합니다.

-P
 장치의 내부적인 선전달(prefetch) 구조를 위한 최대 섹터 수를 설정합니다.
 모든 장치가 이 기능을 지원하는 것은 아닙니다.

-q
 이어지는 옵션을 화면에는 출력하지 않습니다.
 이것은 /etc/rc.d/rc.local 에서 실행될 때 화면의 출력을 줄여서 유용합니다.
 이것은 -i 옵션 -v 옵션 -t 옵션 -T 옵션에는 적용되지 않습니다.

-r
 장치의 읽기 전용(read-only)을 설정하거나 정보를 얻습니다. 설정할때, 이 장치의 쓰기는 허가되지 않습니다.
 
-S
 드라이브의 standby (spindown) 시간을 설정합니다.
 이 수치는 드라이브에게 전원 절약을 위해 스핀들 모터를 멈출때 까지 얼마나 기다릴 것인가를 결정하게 됩니다.
 이런 상황에서 드라이브는 연속되는 디스크 접근에 반응하기 위해 30초정도 걸릴 것 이지만 대부분의 드라이브는 더 빠릅니다.
 timeout 수치는 좀 특이합니다.

* 1-240까지는 5초 단위로 증가하고 (결국 5초부터 20분까지),
* 241~251까지는 30분 단위로 증가(30분에서 5.5시간까지에 해당)합니다.
* 252는 21분을 의미하고
* 253은 특별히 제조사에서 설정한 값으로 8시간에서 12시간사이의 timeout 시간.
* 254는 다른 설정값을 위해서 남겨져 있고
* 마지막으로 255는 21분 15초


-T
 비교를 목적으로 벤치마크를 위해 캐쉬를 읽는 시간을 잽니다.
 정확한 결과를 위해 이것을 적어도 수 메가 바이트의 메모리 자원이 남은 상태의 사용하지 않는 시스템에서 2-3번 정도 반복해서 수행합니다.
 이 옵션은 디스크 접근(access)없이 리눅스 버퍼 캐쉬로 부터 직접적으로 읽어오는 속도를 표시해줍니다.
 이 측정법은 본래 테스트 상태의 시스템의 프로세서, 캐쉬, 메모리의 결과물의 표시입니다.
 -t 옵션과 같이 사용한다면, 수정된 요인에 기초한 -T 의 결과에 -t 의 결과를 함께 보고할 것 입니다.

-t
 비교를 목적으로 벤치마크를 위해 장치를 읽는 시간을 잽니다.
 정확한 결과를 위해 이것을 적어도 수 메가 바이트의 메모리 자원이 남은 상태의 사용하지 않는 시스템에서 2-3번 정도 반복해서 수행합니다.
 이 옵션은 어떠한 사전의 캐쉬가 되지 않은 데이터를 디스크에서 버퍼 캐쉬를 통해 읽는 속도를 표시합니다.
 이 측정법은 리눅스에서 파일시스템의 어떠한 부담을 주지않고 얼마나 빠르게 드라이브가 연속되는 데이터를 지속적으로 읽을수 있는지의 표시입니다.
 정확한 측정법을 확실히 하기 위해서는, BLKFLSBUF ioctl 를 사용하여 -t 가 수행되는 동안 버퍼 캐쉬가 비워져야 합니다.  -T 옵션과 같이 사용한다면, 수정된 요인에 기초한 -T 의 결과에 -t 의 결과를 함께 보고할 것 입니다.

-u
 장치의 interrupt-unmask 를 설정하거나 정보를 얻습니다.
 이 옵션을 1 로 설정할 경우 장치에게 디스크의 인터럽트가 진행되는 동안 다른 인터럽트를 unmask 하도록 허락합니다.  이것은 리눅스의 반응성을 크게 증가시키고 "serial port overrun" 에러를 제거합니다. 이 기능을 사용할때는 주의하십시오: 어떤 드라이브/콘트롤러 조합은 이 기능이 켜졌을때(enable) 입출력(I/O) 대기시간이 증가하는  것에 관대하지 않을수 있습니다.
 결과적으로 파일시스템을 크게 손상시킵니다. 특별히 CMD-640B 와 RZ1000 (E)IDE 인터페이스는 커널 2.0.13 이전 버젼에서는 이 옵션이 사용될 때 신뢰할수 없습니다.
 이전 버젼의 커널을 사용 할때 이런 문제를 고치기 위해서는 IDE prefetch 기능을 이런 인터페이스 에서 꺼 주시길 바랍니다.

-v
 -i 옵션을 제외하고 모든 셋팅을 표시합니다.( IDE 에서는 -acdgkmnru , SCSI 에서는 -gr , XT 에서는 -adgr 과 같습니다.)
  또한 이것은 특별히 어떠한 옵션도 주지 않았을때 기본 동작입니다.

-W
IDE 드라이브의 쓰기-캐쉬(write-caching) 기능을 끄거나 켭니다.( 대개 기본적으로 꺼져(OFF) 있습니다.)

-X
 새로운 (E)IDE/ATA2 드라이브를 위해 IDE 전송 모드를 설정합니다.

-y
 강제로 IDE 드라이브를 신속히 저 전력 소모의 standby 모드로 들어가게 합니다.
 대개는 스핀들 모터를 멈추게 합니다. 현재 전원 모드 상태는 -C 옵션에서 체크할 수 있습니다.

-Y
 강제로 IDE 드라이브를 신속히 가장 적은 전력을 소모하는 sleep 모드로 들어갑니다.
 완전히 shut down을 합니다. 드라이브가 다시 접근(access)할수 있으려면 하드 혹은 소프트 리셋이 필요합니다.
 (리눅스 IDE 드라이버는 필요할 때 자동적으로 리셋을 조절합니다.)

 현재 전원 모드 상태는 -C 옵션에서 체크할 수 있습니다.

-Z
 불편한 시간에 idle/spin-down 을 막기위해 Seagate 드라이브의 자동 전력-보호 기능을 끕니다.

 

번호 제목 글쓴이 날짜 조회 수
326 dmidecode 명령 jook 2009.10.30 32171
325 도메인 / IP 정보 조회 방법 및 사이트 Namlyong 2010.01.13 32072
» hdparm 옵션 알아보기 sylee 2010.02.04 24238
323 반복적인 수행 crontab - 기본편 Namlyong 2010.04.02 24732
322 vsftpd 시간이 맞지 않을때 sylee 2010.04.07 20168
321 리눅스에서 mii-tool 사용 방법 호스트웨이 2012.03.08 22540
320 DHCP 환경에서의 resolv.conf 초기화 현상 호스트웨이 2012.03.09 23597
319 SSH 패스워드 없이 자동 로그인 하는 방법 호스트웨이 2012.03.09 18095
318 리눅스 서버 누가 언제 무슨 작업을 했는지 확인 방법 호스트웨이 2012.03.09 93317
317 데비안 백포트 사용해 보기 호스트웨이 2012.03.16 18238
316 grep 명령어 사용하기 file 호스트웨이 2012.03.16 19199
315 비대해진 로그 파일 내용을 비우는 방법 - /dev/null 호스트웨이 2012.03.16 61402
314 history 조회시 '날짜,시간' 표시하기 호스트웨이 2012.03.16 49290
313 at 명령어를 이용한 예약 작업 호스트웨이 2012.03.16 21863
312 scp 명령어를 이용한 파일 복사 및 전송 호스트웨이 2012.03.16 264432
311 yum repository 국내 mirror 설정 file 호스트웨이 2012.03.23 36858
310 vsftp사용 시 root 계정 이용하기 file 호스트웨이 2012.03.23 18498
309 OSI 7 Layer 의 이해 file 호스트웨이 2012.03.23 18312
308 포트를 사용중인 프로세스 확인하기 file 호스트웨이 2012.03.23 19224
307 VSFTP 에서 사용하는 port를 변경하기 호스트웨이 2012.03.23 39687